GamePal Specification
Web Page: http://www.ee.ualberta.ca/ee552proj/
Vera Casteel, Mark Fedorak, Ron Smith, Kris Pucci
INTRODUCTION:
The GamePal is a device that will contain many features required for playing many currently non-electronic games. The GamePal will consist of an alphanumeric LCD, a keypad, three Jeopardy™ buzzers, and a main processor that handles all of the algorithmic functions and acts as a controller of all the other components. The GamePal development team is currently on schedule and no modifications to that schedule outlined in the proposal will be necessary.
DESIGN DETAILS:
Currently the alphanumeric (character based) LCD that we intend to use is the Seiko L4044 it is a 4 x 40 (H x W) display that contains 17 pins of which 12 will be connected to the FPGA. Originally a graphic LCD was considered however due to the lack of good reference materials and the complexity involved it was decided that an alphanumeric LCD would have to suffice. The above LCD is by no means the only possible LCD, but a supplier in the United States is selling it for about US$18.00. However we will still be looking around Edmonton to see if any electronics stores have them around here.
The FPGA to be included in the GamePal is the Altera board. The keypad, as well as the buzzer to be used are yet to be determined. However these are not essential to the design of the GamePal and will be decided upon sometime in the next few weeks (definitely by the time the Resource Requirements are due). The keypad will contain 17 buttons consisting of the digits 0 to 9, Up Arrow, Down Arrow, Main Menu, Enter, Repeat, Backspace, and a Reset. Each key will require one pin of the FPGA. The buzzers will each require 2 pins one out and one in, for a total of six buzzer / game port pins on the FPGA.
One of the internal components that might be needed is an EPROM. The reason for this is that the LCD requires large amounts of data to be available. Every time we want to display data on the LCD it will require information on what character to display, and where to display it. If you look at all of the features of the GamePal this could add up to lots of data that needs to be predefined. An EPROM would allow us to create many of the often used functions and strings in memory and just call specific memory addresses as the user executes a feature. At this time we can not be sure on how many pins would be required for the EPROM but an educated guess is that for a 256KB ROM it would require 18 address pins and 8 data pins for a total of 26 pins.
FEATURE SET:
The following features are currently planned for the GamePal:
If constrained by time and/or space, the built-in games will be removed, as well as possibly, the buzzer system. If more time and space is available, a beep or buzzer sound will be included in the system for the countdown timer (feature 4) and the buzzer system. It is important to note that the feature set is still not set in stone we may decide upon new features as we think of new features that could be included.
Another possible feature to implement could be off-line testing. The testing would occur when the GamePals reset button is pressed. The GamePal would go into a test mode, which would last for a few seconds. If the test was successful the main menu or welcome screen would be displayed, an error message if the test detected an error.
There are several techniques we learned in EE 480 that could be implemented. One possibility is deterministic test pattern generation (ATPG or PTPG) which would have the test vectors stored in the EPROM. We could then compare the results of the tests with predefined values stored in the EPROM. Another possibility is to implement the IEEE Standard 1149.1 for boundary scan testing.
It is important to note that this feature would require extensive research and a substantial investment of our time and is therefore unlikely to be included. However it would make for an interesting feature and would probably be worth our time and effort.
I/O PIN DESCRIPTIONS:
Pin Description | # of Pins |
LCD Data Bus | 8 |
LCD Enable | 2 |
LCD Read / Write | 1 |
LCD Instruction / Data toggle | 1 |
KEYPAD Digits 0 to 9 | 10 |
KEYPAD Up Arrow | 1 |
KEYPAD Down Arrow | 1 |
KEYPAD Main Menu | 1 |
KEYPAD Enter | 1 |
KEYPAD Repeat | 1 |
KEYPAD Backspace | 1 |
KEYPAD Reset / Power | 1 |
GAME PORT In | 3 |
GAME PORT Out | 3 |
EPROM Address Lines (estimation) | 18 |
EPROM Data Lines (estimation) | 8 |
Total Number of Pins Required | 61 |
VHDL ENTITIES:
There will be one main entity and four sub entities that will be required for this project. These are by no means the only entities that will be required but they are the major ones. When we start the actual development of the GamePal we will get a better feel for what entities will really be required. The main entity is the GamePal itself. This will be used for testing the entire project. The four sub entities are the FPGA, display LCD, keypad / game port, and the EPROM. To see a listing of the VHDL please contact Mark Fedorak. The below diagram is the VHDL hierarchy.
ADDITIONAL INFORMATION:
Test Techniques to be used |
If we implement the off-line testing then we will use that to test the GamePal. However we will run simulations and do all of our testing of each component in the computer before downloading to the Altera board. The IC Tester & demonstration technique will be applied. |
Additional Parts |
The alphanumeric LCD display will be ordered within the week. A keypad, switches for the buzzer system, and an EPROM (size yet to be determined) still need to be obtained. |
FPGA |
Altera |
SCHEMATIC:
This page was last updated February 02, 1998: 22:30h