TkGate

TkGate

TkGate 2.0.0
Sorts Redaktör och simulator av logiska elektroniska kretsar
Författare Jeffery P. Hansen
Utvecklaren Jeffery P. Hansen
Skrivet i C , TCL
Gränssnitt Tk , Xlib
Operativ system POSIX
Gränssnittsspråk Engelska, spanska, tyska, franska, italienska, japanska, ryska
Första upplagan 1987
senaste versionen 2.0.0 (19 juni 2015 ) ( 2015-06-19 )
släppa kandidat 2.0-rc3 (16 mars 2015 ) ( 2015-03-16 )
betaversion 2.0-b10 (27 september 2009 ) ( 2009-09-27 )
alfaversion 2.1-a1 (19 juni 2015 ) ( 2015-06-19 )
stat aktiva
Licens GNU GPL 2+
Hemsida tkgate.org

TkGate är en miljö för modellering och simulering av digitala elektroniska kretsar, bestående av en grafisk editor med ett tcl/tk-baserat gränssnitt och en händelsedriven simulator. TkGate stöder ett stort antal färdiga primitiver, från individuella transistorer och grindar, till standardkombinations- och serielogikkretselement. Dessutom stöder den definitionen av moduler i form av grafiska logiska diagram eller Verilog- beskrivningar, samt modulbibliotek för att skapa komplexa hierarkiska modeller med kodåteranvändning. Distributionen inkluderar exempelkretsar och en handledning. Exempel inkluderar en 16-bitars processor programmerad för att köra ett djurspel. Det är gratis programvara som distribueras under villkoren i GPL2. [ett]

Historia om TkGate

TkGate startade som ett studentprojekt av Jeffrey Hansen vid Carnegie Mellon University 1987. På den tiden kallades programmet helt enkelt gate och kördes under wm fönsterhanteraren , ett fönstersystem som utvecklades på CMU innan X11 blev allmänt använt. Denna version av programmet användes av studenter på datorarkitekturkursen på CMU för att skapa en enkel processor som heter "The Bat Computer". Många av de schematiska bilderna och markörbilderna (som trådskäraren) som används i den moderna versionen skapades ursprungligen för gate . Den här versionen innehöll också ett dolt pannkaksrecept som fortfarande finns på TkGate.

Efter att ha suttit på en hylla i flera år återuppstod programmet 1991 och överfördes till XLib . Denna version användes flera gånger av studenter i en introduktionskurs i digital logik, men efter att författaren tog examen från CMU glömdes den igen.

Arbetet med den första Tcl / Tk- inkarnationen började 1998 som en övning i att lära sig Tcl/Tk. Det var också den första versionen som använde ett Verilog-baserat filsparformat. Tidigare versioner av gate/xgate använde ett Lisp -liknande format .

Den nuvarande utvecklingsversionen, TkGate 2.0, är ​​ett betydande framsteg jämfört med den senaste första generationens version av TkGate 1.8.7 . Medan 1.8 hade cirka 73 000 rader C och Tcl , fördubblade TkGate 2.0 nästan det antalet (cirka 130 000). Viktiga innovationer i TkGate 2.0 inkluderar ett avsevärt förbättrat och standardiserat användargränssnitt, Verilog-korrekt spara filformat (alla metadata är Verilog-kommentarer), Verilog-baserad simulering, modulgränssnittsredigerare, godtyckliga teckenmodulgränssnitt och Tcl/Tk-skriven virtuell kringutrustning ... [2]

Funktioner

TkGate låter dig designa digitala elektroniska kretsar som en hierarkisk uppsättning moduler.

Moduler beskrivs på språket Verilog eller i form av grafiska diagram som innehåller färdiga primitiva komponenter. De inbyggda primitiverna har dock även en intern representation i Verilog, så det grafiska sättet att beskriva kretsar är helt enkelt ett mer bekvämt och visuellt sätt att uppnå samma resultat som att använda rena Verilog-kretsar. Inbyggda primitiver inkluderar:

För mer komplexa interaktiva simuleringar kan extern virtuell kringutrustning skrivs i tcl/tk användas. Distributionssatsen för programmet innehåller exempel på sådana enheter: en realtidsklockgenerator, en terminal och en gränssnittsdel av dryckesautomaten.

Genom att använda Verilog kan du representera digitala kretsar på olika abstraktionsnivåer:

Se även

Anteckningar

  1. TkGate-projektsidan . Tillträdesdatum: 3 februari 2015. Arkiverad från originalet 11 januari 2015.
  2. TkGate 2.0-dokumentation, TkGate-historik (nedlänk) . Hämtad 3 februari 2015. Arkiverad från originalet 6 mars 2016. 

Länkar