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:

  1. Up to twenty, twenty sided dice can be rolled simultaneously. Dice can be assigned a level, for example, in Risk™ or Axis and Allies™ there are multi-colored dice that each need to be rolled at once. Several dice of different levels can be rolled at once. The results can then be displayed in a dice by dice format or in a win/lose format on the LCD.
  2. A clock that will display the current time in HH:MM:SS AM/PM.
  3. A second level stopwatch timer that can be used for games where the amount of time it takes for the user to complete a move is important. There will be a one-button hotkey to restart the timer. The hotkey will restart the timer and display the previous time just below the currently elapsing time.
  4. A second level countdown timer that can be set to a maximum of one hour and will have hotkey type functionality much like the stopwatch timer.
  5. A spinner like that used in Twister™. This will choose one of four colors and display the color name on the LCD.
  6. A Jeopardy™ buzzer system where up to three players have buzzers and the GamePal decides who buzzed first.
  7. A built-in version of Tic-Tac-Toe, Chess, Checkers, or other such games. These games would be for two real-life players. The GamePal would only facilitate the game board.

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 GamePal’s 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:


[HOME]

This page was last updated February 02, 1998: 22:30h