-[[Datei:20120201-LEDPanel32.jpg|miniatur|Abbildung: TMS 9901-95NL]]
+http://www.elektrikforum.de/ftopic16944.html
+[[Datei:20120201-LEDPanel25.jpg|miniatur|Abbildung: Bugged.]]
+== CPU ==
[[Datei:20120201-LEDPanel33.jpg|miniatur|Abbildung: TMS 9980 ANL]]
-http://www.elektrikforum.de/ftopic16944.html
+Bei der CPU handelt es sich um einen 16-bit TI-Microcontroller mit einem internen 2,5MHz Oszillator und maximal 65,536 Byte RAM + ROM (2^15 * 16bit).
+Mit externem Oszillator kann die CPU mit rund 10MHz betrieben werden.
-== CPU ==
+Die CPU ist ein spar TMS9900 und hat extern ein:
+*<b>A0-A13</b> 14Bit 3-state Adressinterface (Pins 4-17)
+*<b>D0-D7</b> 8Bit Datenbus (Pins 26-33)
+*<b>Vcc</b> 5V (Pin 20)
+*<b>Vbb</b> -5V (Pin 21)
+*<b>Vdd</b> 12V (Pin 36)
+*<b>Vss</b> GND (Pin 35)
+*<b>CLK-in</b> Phase 1-4 (Pin 34) <i>CLK = CLK-in / 4</i>
+*<b>DBIN</b> (data bus in) (Pin 18) wenn HIGH, dann ist der Datenbus im READ state
+*<b>¬MEMEN</b> (memory enable) (Pin 40) wenn LOW dann ist das Adressregister gesetzt
+*<b>¬WE</b> (write enable) (Pin 38) wenn LOW dann können Daten vom Datenbus geschrieben werden
+* To Be Continued
-http://www.chinaicmart.com/pdf/index.html?keyword=TMS9980
-http://www.chinaicmart.com/pdf/pdf_down.asp?id=891159
+Beschreibung/Anleitung: http://datatomb.de/mirror/Docs/Newscanner/TMS9900_DataManual.pdf <br>
+Specs: http://datatomb.de/mirror/Docs/Newscanner/TMS9980.pdf
-http://www.seekic.com/pdf/index.html?sel1=3&keyword=TMS9901
-http://www.seekic.com/pdf/pdf_down.asp?id=593810
+== Speicher (RAM) ==
+[[Datei:20120201-LEDPanel28.jpg|miniatur|Abbildung: Noch leere Speicherbänke, rechts unten einer von bisher 4 x TC5514AP-2]]
-== ROM dump NEC D2716D 1.2.2012 ==
-Dump des {{WP|EPROM}} aus der LED-Laufleiste.
+Als RAM findet Toshiba TC5514AP-2 Einsatz, ein CMOS-Speicher mit 4Bit Datenbus und Wortlänge (vermutlich sind je 2 Parallel geschaltet um die 8Bit Wortbeite für den CPU-Datenbus zu erreichen).
+Der 10Bit Addressbus ist ein simpler Direct-Access-Bus (A0-4 sind die Spalten, A4-9 die Zeilen) der Speicher ist ein 64x64bit großes Array je Spalte 4 Bit.
+
+Wir haben also 2kByte RAM vermutlich in 2048 Wörtern organisiert.
+
+Die Zugriffszeiten sind recht flink (für altes CMOS-ram) mit maximal 200ns.
+
+"Besonderheit": RAM und ROM teilen sich den Speicherbus und damit auch die Adressen, denn nach dem RESET läd die CPU blind die erste Instruktion vom Bus es sei denn sie wird per CRU via direct instruction write and execute injected.
+
+Datenblatt/Anleitung: http://datatomb.de/mirror/Docs/Newscanner/TC5514AP-3.pdf
+
+== Interrupt-Controller / I/O-Interface TMS 9901 ==
+[[Datei:20120201-LEDPanel32.jpg|miniatur|Abbildung: TMS 9901-95NL]]
+
+Der TMS 9901 bindet über das CRU-Interface (einfaches Register-Tnterface) und die Interrupt-Lines der CPU, Interrupt kontrollierte I/O-Ports an (6 dedizierte Eingänge, 9 Input/Output-Pins).
+Außerdem werden 6 weitere nicht Interrupt gesteuerte Ports angebunden.
+
+Der I/O-Controller ist nötig, da die TMS9900 keinerlei I/O Buffer o.ä. haben, wie es bei modernen Microkontrollern üblich ist
+
+Datenblatt/Anleitung: http://datatomb.de/mirror/Docs/Newscanner/TMS9901.pdf <br>
+
+== EPROM ==
+
+1x NEC D2716D {{WP|EPROM}} war gesockelt, ein anderer Sockel war frei.
+
+Dump vom 1.2.2012, mehrmaliges Lesen einwandfrei, Bitfehler wg. Lagerzeit im Vergleich zum Originalinhalt aber immer möglich - einziges Klartextvorkommen ist "STORE FULL ( NEWSCANNER )" fast am Ende der Daten:
[[Datei:20120201-LEDPanel30.jpg|miniatur|Abbildung: NEC D2716D]]
<pre>
=> 3/V150H/2P
Varta Herst.-Nr.: 55615603940
+
+== Linksammlung ==
+*http://www.seekic.com/pdf/index.html?sel1=3&keyword=TMS9901
+*http://www.chinaicmart.com/pdf/index.html?keyword=TMS9980
+*http://www.bitsavers.org/pdf/ti/_dataBooks/
+*http://www.youtube.com/watch?v=EJlgik3ho48 Testing The 74LS138 Decoder
+*http://www.datasheetarchive.com/UA556PC-datasheet.html 556 Timer Datasheet
+
[[Kategorie:Newscanner]]