DIY-Calculator Hardware:Hardware Project

From DIY-Calculator_Hardware

(Difference between revisions)
Jump to: navigation, search
Revision as of 17:15, 3 April 2007
Hzulu (Talk | contribs)

← Previous diff
Revision as of 15:43, 14 May 2007
Hzulu (Talk | contribs)

Next diff →
Line 1: Line 1:
[[Image:Blockdiagram.jpg|thumb|left|Blockdiagram]] [[Image:Blockdiagram.jpg|thumb|left|Blockdiagram]]
-The layout will somewhat resemble the layout of the (virtual) DIY Calculator with an 20x1 character LC display and a 70 keys sensor key matrix. Additionally there are connectivity means for a host PC:+The layout will somewhat resemble the layout of the (virtual) DIY Calculator with an 20x2 character LC display and a 73 keys sensor key matrix. Additionally there are connectivity means for a host PC:
* Serial (RS-232) for uploading user programs and providing a console to the DIY Calculator CPU * Serial (RS-232) for uploading user programs and providing a console to the DIY Calculator CPU
* A JTAG programming connector; this connects to the PC's parallel port and enables the user to load new designs into the FPGA * A JTAG programming connector; this connects to the PC's parallel port and enables the user to load new designs into the FPGA

Revision as of 15:43, 14 May 2007

Blockdiagram
Enlarge
Blockdiagram

The layout will somewhat resemble the layout of the (virtual) DIY Calculator with an 20x2 character LC display and a 73 keys sensor key matrix. Additionally there are connectivity means for a host PC:

  • Serial (RS-232) for uploading user programs and providing a console to the DIY Calculator CPU
  • A JTAG programming connector; this connects to the PC's parallel port and enables the user to load new designs into the FPGA



Project status (2.Apr.2007):

Assembled prototypes (2nd version) arrived.

DIY Calculator - up and running
Enlarge
DIY Calculator - up and running

This time just good news!

Out of the box, all pieces plugged together, power applied and firmware loaded. Everything works - as there would be just this possibility. Sometimes miracles happen :-)

Project status (14.Dec.2006):

New prototype boards arrived...

FPGA board
Enlarge
FPGA board
Keypad
Enlarge
Keypad


Project status (28.Nov.2006):

A new cycle of prototyping started.

After very careful inspection of first prototypes, at least as far this was possible, all layout changes are made for the new prototyping cycle - hopefully this time we'll have more luck...

Schematics:

Layout:

Project status (24.Nov.2006):

Assembled FPGA board (very first version) finally arrived.

populated FPGA Board
Enlarge
populated FPGA Board

Good and bad news...

Good news first: We've got the board finally - almost everything works as supposed.

Now the bad news: FPGA does not work! I've made two mistakes - T1 (in JTAG chain) has drain and source the wrong way around - this is not really bad because I can fix it just for these three samples. But the second one is quite fatal - VCCAUX on FPGA should be wired to 3.3V instead of 1.2V. As those voltages are on inner layers and under the BGA, there is no way to get this fixed. I could manage to disconnect it from 1.2V but FPGA doesn't start configuration when one of the voltages is out of specs.
Anyway, attached picture looks nice - I'll put down my "Picasso" at home and hang this up instead - it's almost as expensive :-)

Project status (16.Nov.2006):

Work on FPGA Board revision is finished.

FPGA Board screenshot
Enlarge
FPGA Board screenshot

Schematics:

Layout:


Thanks to Johannes' genious "SPI flashcontroller", userdata can be permanently stored in the sparespace of FPGA's Serial Flash. This obsoletes all the PROM/RAM socket stuff. A 128kx8 SRAM has been added instead. At boottime, userdata is restored from SPI to RAM and the Monitor starts execution. Nowadays, 128kx8 SRAM's are the smallest available. This is actually twice as much the DIY CPU can address. Therefore an extra address line (A16) is added and can be used for future expansion.

Project status (15.Nov.2006):

Work on keypad revision is finished.

Keypad screenshot
Enlarge
Keypad screenshot

Schematics:

Layout:


After successful tests with prototype, we now changed throughhole components to SMT. Silkprint was added and 16 spare signals from FPGA board are now tied to testpoints, for better usability as a generic FPGA prototyping environment. Circuitry for switching LCD backlight was added (see new schematics).

Due to very poor availibility of the previously planned LCD Display, we decided to choose a "more common" 2x20 type. This display is manufactured by a lot of different vendors. Later, the LCD controller inside the FPGA, will be extended to adress the extra line - most probably a new I/O port for the CPU will be assigned for this purpose, to maintain compatibility to the Virtual DIY Calculator.

Redesign of FPGA board is in progress...

Project status (11.Nov.2006):

During the past weeks a lot of things happened at the software side (see Upload_Utility_Project). This happened just in time, since we expect the first pieces of the real DIY Calculator hardware for next week. So stay tuned, this section will soon have great news and exciting pictures!

Project status (9.Oct.2006):

New LCD module tested and integrated. The originally planned 20x1 LCD module is hard to get, so we evaluated additionally 20x2 types (this mainly has impact on the mechanical hardware design).

Project status (31.Aug.2006):

Testing sensor pads
Enlarge
Testing sensor pads
~3uS skew
Enlarge
~3uS skew


Test of sensor keypad was successful. Here are the photos

Project status (13.Aug.2006):

Prototype PCB layout completed. Here are the "final" schematics:

keypad mechanics:

and the layout:

Bare FPGA Board
Enlarge
Bare FPGA Board
Keypad prototype
Enlarge
Keypad prototype


Test of sensor keypad is in progress.

Project status (7.Aug.2006):

We decided to separate the functionality into two PCBs: the FPGA with surrounding components and the sensor keypad. This gives even more flexibility for different I/O modules. Here are the updated schematics:

Project status (19.Jul.2006):

schematics completed, PCB layout work started

Personal tools