hwmod.git
13 years agogesamt: parser ins historymodul eingebaut und es geht, YEAH! :) alpha
Bernhard Urban [Thu, 20 May 2010 19:08:04 +0000 (21:08 +0200)]
gesamt: parser ins historymodul eingebaut und es geht, YEAH! :)

quartus spuckt folgende werte fuer das design aus:
logic elements: 2988
dsp block 9-bit elements: 8/48
ueber max_freq aeussert sich quartus nicht (ich frag mich grad warum...
vielleicht liegts an der web-edition)

zitat aus einer mail vom jakob (bezueglich logic elements):
Bei den Logic Elements halten wir folgende Grenzen für sinnvoll:

< 3000 sehr gut
3000-5000 ok
5000-9000 geht so
> 9000 nicht ok

13 years agohistory/display: nach d_new_result = '1' werden die naechsten 70 bytes vom display
Bernhard Urban [Thu, 20 May 2010 17:25:02 +0000 (19:25 +0200)]
history/display: nach d_new_result = '1' werden die naechsten 70 bytes vom display
angefordert um das ergebnis auszulesen. momentan wird jedes byte im speicher mit
dem zeichen 'A' initialisiert und daher werden nach dem druecken von ENTER
70x'A' ausgegeben. Naechster Schritt: parser einbauen :)

13 years agospartan3e: reset-button
Bernhard Urban [Thu, 20 May 2010 17:17:50 +0000 (19:17 +0200)]
spartan3e: reset-button

13 years agohistory: maximal 70 zeichen eingabe
Bernhard Urban [Thu, 20 May 2010 14:39:28 +0000 (16:39 +0200)]
history: maximal 70 zeichen eingabe

13 years agohistory/display: backspace logic
Bernhard Urban [Thu, 20 May 2010 14:03:13 +0000 (16:03 +0200)]
history/display: backspace logic

13 years agospec: statemachines als pdf... auch wenns weh tut, sry :/
Bernhard Urban [Thu, 20 May 2010 01:54:29 +0000 (03:54 +0200)]
spec: statemachines als pdf... auch wenns weh tut, sry :/

... ich brachte es zwar zum kompilieren im tilab, aber es war ned das was es
sein sollte :(

13 years agodisplay/history: unnoetiges weg, kthx
Bernhard Urban [Thu, 20 May 2010 01:14:42 +0000 (03:14 +0200)]
display/history: unnoetiges weg, kthx

13 years agospartan3e: skript fuer non-prom-programming
Bernhard Urban [Thu, 20 May 2010 01:12:52 +0000 (03:12 +0200)]
spartan3e: skript fuer non-prom-programming

13 years agohistory: testbench mit scanner und display instanz erweitert
Bernhard Urban [Wed, 19 May 2010 23:48:31 +0000 (01:48 +0200)]
history: testbench mit scanner und display instanz erweitert

13 years agodisplay: arbeitet endlich wie gewuenscht
Bernhard Urban [Wed, 19 May 2010 23:39:45 +0000 (01:39 +0200)]
display: arbeitet endlich wie gewuenscht

13 years agoadded initial uart_rx files, not exaustively tested though.
Alexander Oh [Wed, 19 May 2010 23:18:21 +0000 (01:18 +0200)]
added initial uart_rx files, not exaustively tested though.

13 years agoinitial uart_rx
Alexander Oh [Wed, 19 May 2010 18:52:10 +0000 (20:52 +0200)]
initial uart_rx

13 years agothink it works - compiles, but cannot simulate
Alexander Oh [Wed, 19 May 2010 11:45:15 +0000 (13:45 +0200)]
think it works - compiles, but cannot simulate

13 years agoinitial counter working
Alexander Oh [Tue, 18 May 2010 23:34:42 +0000 (01:34 +0200)]
initial counter working

13 years agodisplay/history: komisches init verhalten
Bernhard Urban [Wed, 19 May 2010 17:31:35 +0000 (19:31 +0200)]
display/history: komisches init verhalten

ausserdem sollen vorerst nur 71byte ram verwendet werden.

13 years agoscanner: es gibt key_pressed und key_released -- bei beiden wird das zeichen gesendet
Bernhard Urban [Wed, 19 May 2010 15:42:15 +0000 (17:42 +0200)]
scanner: es gibt key_pressed und key_released -- bei beiden wird das zeichen gesendet

... das erklaert warum die zeichen doppelt angezeigt wurden :) nun wird es nur
noch nach key-released akzeptiert, das macht die ganze logik sogar noch etwas
einfacher

13 years agodisplay/history: robuster, trotzdem funktioniert es noch nicht so wie ich moechte
Bernhard Urban [Wed, 19 May 2010 14:33:25 +0000 (16:33 +0200)]
display/history: robuster, trotzdem funktioniert es noch nicht so wie ich moechte

13 years agodisplay: nicht jede zeile neu... ausserdem vorerst fixe werte im ram
Bernhard Urban [Wed, 19 May 2010 14:17:00 +0000 (16:17 +0200)]
display: nicht jede zeile neu... ausserdem vorerst fixe werte im ram

13 years agospartan3e: reset sollte man mindestens mit high verbinden - geht jetzt :)
Bernhard Urban [Tue, 18 May 2010 18:47:26 +0000 (20:47 +0200)]
spartan3e: reset sollte man mindestens mit high verbinden - geht jetzt :)

ausserdem: das dcm (ist gleich pll in xilinx-sprache) modul hat anscheind auch
nicht ganz gepasst. da die clk-source aber eh 50MHz sind und 25MHz fuer das
vga-modul benoetigt werden, ist das einfach in einem taktteiler zu realisieren

13 years agospartan3e: init
Bernhard Urban [Mon, 17 May 2010 01:37:30 +0000 (03:37 +0200)]
spartan3e: init

... tut sich leider noch nix am board

13 years agodisplay: ein paar fixes... aber es passt trotzdem noch nicht
Bernhard Urban [Sun, 16 May 2010 21:46:38 +0000 (23:46 +0200)]
display: ein paar fixes... aber es passt trotzdem noch nicht

... nach jedem tastendruck wird der *komplette* eingabe string nochmal
ausgegeben und ich checks einfach nicht warum :/

ausserdem werden die zeichen doppelt uebernommen (ausgenommen das erste
zeichen).

schluss fuer heute.

13 years agodisplay: nul-byte schreiben ist boese. gehoert noch schoener gefixt
Bernhard Urban [Sun, 16 May 2010 21:12:40 +0000 (23:12 +0200)]
display: nul-byte schreiben ist boese. gehoert noch schoener gefixt

13 years agodisplay: rechtzeitig wieder COMMAND_NOP anlegen
Bernhard Urban [Sun, 16 May 2010 19:21:49 +0000 (21:21 +0200)]
display: rechtzeitig wieder COMMAND_NOP anlegen

13 years agohstring: length fix
Bernhard Urban [Sun, 16 May 2010 19:02:29 +0000 (21:02 +0200)]
hstring: length fix

13 years agodisplay: x"000000" ist schwarz... aber mit x"ffffff" gehts! flashable_w00t
Bernhard Urban [Sun, 16 May 2010 18:51:58 +0000 (20:51 +0200)]
display: x"000000" ist schwarz... aber mit x"ffffff" gehts!
also es wird immerhin was angezeigt :)

13 years agoscanner: argh... es kommen ja scancodes rein und keine asciicodes!
Bernhard Urban [Sun, 16 May 2010 18:15:39 +0000 (20:15 +0200)]
scanner: argh... es kommen ja scancodes rein und keine asciicodes!

13 years agotop-level/pll: pinmapping fixed und pll angepasst
Bernhard Urban [Sun, 16 May 2010 16:52:30 +0000 (18:52 +0200)]
top-level/pll: pinmapping fixed und pll angepasst

13 years agohistory: simple implementierung + testbench
Bernhard Urban [Sun, 16 May 2010 15:53:16 +0000 (17:53 +0200)]
history: simple implementierung + testbench

auf ins tilab \o/

13 years agodisplay: quartus warning fix
Bernhard Urban [Sun, 16 May 2010 13:02:55 +0000 (15:02 +0200)]
display: quartus warning fix

13 years agodisplay: simple implementierung + testbench
Bernhard Urban [Sun, 16 May 2010 11:44:53 +0000 (13:44 +0200)]
display: simple implementierung + testbench

13 years agohistory: ram modul hinzugefuegt
Bernhard Urban [Sun, 16 May 2010 10:29:28 +0000 (12:29 +0200)]
history: ram modul hinzugefuegt

13 years agotop-level: weiteres portmapping fuer minimalsetup
Bernhard Urban [Sun, 16 May 2010 09:45:47 +0000 (11:45 +0200)]
top-level: weiteres portmapping fuer minimalsetup

13 years agotop-level: ansatz fuer minimales setup inkl. geruest fuer history- und displaymodul...
Bernhard Urban [Sun, 16 May 2010 00:25:43 +0000 (02:25 +0200)]
top-level: ansatz fuer minimales setup inkl. geruest fuer history- und displaymodul und einer pll (kopiert von der didelu)

13 years agomake: kompiliere auch files in unterordner
Bernhard Urban [Sun, 16 May 2010 00:25:41 +0000 (02:25 +0200)]
make: kompiliere auch files in unterordner

13 years agovga/ps/2: ip-core hinzugefuegt
Bernhard Urban [Sun, 16 May 2010 00:25:40 +0000 (02:25 +0200)]
vga/ps/2: ip-core hinzugefuegt

13 years agotodo/implemtierung: update
Bernhard Urban [Sun, 16 May 2010 00:25:38 +0000 (02:25 +0200)]
todo/implemtierung: update

13 years agoquartus: nur noch ein tcl skript...
Bernhard Urban [Sun, 16 May 2010 00:25:37 +0000 (02:25 +0200)]
quartus: nur noch ein tcl skript...

13 years agoscanner: hoffentlich passen meinen annahmen ueber das ps/2 modul
Bernhard Urban [Sat, 15 May 2010 16:22:26 +0000 (18:22 +0200)]
scanner: hoffentlich passen meinen annahmen ueber das ps/2 modul

13 years agoparser: you didn't see this
Bernhard Urban [Sat, 15 May 2010 13:58:31 +0000 (15:58 +0200)]
parser: you didn't see this

13 years agoparser: alu als eigene instanz im parser
Bernhard Urban [Tue, 11 May 2010 23:04:31 +0000 (01:04 +0200)]
parser: alu als eigene instanz im parser

13 years agoparser: / und mod in hardware
Bernhard Urban [Tue, 11 May 2010 23:04:29 +0000 (01:04 +0200)]
parser: / und mod in hardware

13 years agoalu: rest wird auch uebernommen, geht aber nur fuer positive paare. TB fuer postlayou...
Bernhard Urban [Tue, 11 May 2010 23:04:27 +0000 (01:04 +0200)]
alu: rest wird auch uebernommen, geht aber nur fuer positive paare. TB fuer postlayout wurde nicht angepasst

13 years agoparser: fehlermeldungen
Bernhard Urban [Tue, 11 May 2010 17:10:25 +0000 (19:10 +0200)]
parser: fehlermeldungen

TODO: *, / und mod noch durch ALU ersetzen (ALU muss dazu noch erweitert
werden). durch error flag der ALU kann noch overflow fehlermeldung eingebaut
werden (fuer die berechnung von z_int).

13 years agoparser: vorzeichen werden nun auch beachtet
Bernhard Urban [Tue, 11 May 2010 14:21:57 +0000 (16:21 +0200)]
parser: vorzeichen werden nun auch beachtet

13 years agoparser: whitespaces ignorieren
Bernhard Urban [Tue, 11 May 2010 11:41:48 +0000 (13:41 +0200)]
parser: whitespaces ignorieren

13 years agoparser: vereinfachungen und kleinere verbesserungen
Bernhard Urban [Mon, 10 May 2010 23:32:18 +0000 (01:32 +0200)]
parser: vereinfachungen und kleinere verbesserungen

13 years agoparser: ausdruecke werden erfolgreich geparst, einschraenkungen:
Bernhard Urban [Mon, 10 May 2010 23:29:46 +0000 (01:29 +0200)]
parser: ausdruecke werden erfolgreich geparst, einschraenkungen:
o keine negative zahlen
o keine leerzeichen
o kein errorhandling
o division und modulo gehoeren noch ersetzt

ausserdem: bugfix in der alu (division hat nicht ganz gepasst bei negativen
zahlen)

13 years agoalu: error flag setzen bei overflow/underflow bzw. bei division durch 0
Bernhard Urban [Mon, 10 May 2010 21:00:42 +0000 (23:00 +0200)]
alu: error flag setzen bei overflow/underflow bzw. bei division durch 0

13 years agoparser: ausdruecke wie "x+y+z" koennen schon ausgewertet werden
Bernhard Urban [Sun, 9 May 2010 21:38:01 +0000 (23:38 +0200)]
parser: ausdruecke wie "x+y+z" koennen schon ausgewertet werden

13 years agoparser: erste gehversuche. im moment wird die eingabe einfach zurueckgegeben zur...
Bernhard Urban [Sun, 9 May 2010 19:14:50 +0000 (21:14 +0200)]
parser: erste gehversuche. im moment wird die eingabe einfach zurueckgegeben zur testbench

13 years agospec: signale ein wenig umbenannt; layout angepasst spec_final
Bernhard Urban [Fri, 30 Apr 2010 17:51:12 +0000 (19:51 +0200)]
spec: signale ein wenig umbenannt; layout angepasst

13 years agospec: weitere anpassungen bei der schnittstellenbeschreibung
Bernhard Urban [Fri, 30 Apr 2010 17:23:32 +0000 (19:23 +0200)]
spec: weitere anpassungen bei der schnittstellenbeschreibung

13 years agospec: low aktiv fuer reset und btnA
Bernhard Urban [Fri, 30 Apr 2010 15:09:53 +0000 (17:09 +0200)]
spec: low aktiv fuer reset und btnA

13 years agospec: errorflag fuer ALU
Bernhard Urban [Fri, 30 Apr 2010 14:57:59 +0000 (16:57 +0200)]
spec: errorflag fuer ALU

13 years agospec: ein paar rechtschreibfehler
Bernhard Urban [Fri, 30 Apr 2010 14:36:14 +0000 (16:36 +0200)]
spec: ein paar rechtschreibfehler

das ist zum diff schauen ganz praktisch ;)
$ cat >> ~/.gitconfig
[alias]
wdiff = diff --color-words

13 years agospec: name und so angepasst. @alex: BITTE KENNZAHL PRUEFEN!
Bernhard Urban [Fri, 30 Apr 2010 14:18:43 +0000 (16:18 +0200)]
spec: name und so angepasst. @alex: BITTE KENNZAHL PRUEFEN!

13 years agospec: weitere mini-fixes
Bernhard Urban [Thu, 29 Apr 2010 17:56:47 +0000 (19:56 +0200)]
spec: weitere mini-fixes

13 years agodocs: yet another ip-cores update und ein dokument das binary to BCD konvertierung...
Bernhard Urban [Tue, 27 Apr 2010 21:55:46 +0000 (23:55 +0200)]
docs: yet another ip-cores update und ein dokument das binary to BCD konvertierung beschreibt

... ist angeblich ganz nuetzlich bei signed -> ASCII und vice versa.

13 years agospec: schauen die tabellen so besser aus?
Bernhard Urban [Tue, 27 Apr 2010 21:39:44 +0000 (23:39 +0200)]
spec: schauen die tabellen so besser aus?

13 years agospec: kleinere anpassungen
Bernhard Urban [Tue, 27 Apr 2010 21:39:31 +0000 (23:39 +0200)]
spec: kleinere anpassungen

13 years agogepatchte ipcores der LVA
Bernhard Urban [Mon, 26 Apr 2010 14:51:13 +0000 (16:51 +0200)]
gepatchte ipcores der LVA

13 years agotb/alu: ueberpruefe ob wirklich alle testfaelle erfolgreich waren
Bernhard Urban [Sun, 25 Apr 2010 14:30:09 +0000 (16:30 +0200)]
tb/alu: ueberpruefe ob wirklich alle testfaelle erfolgreich waren

14 years agoalu: postsim geht jetzt zwar, trotzdem haufweise warnings...
Bernhard Urban [Mon, 19 Apr 2010 09:30:28 +0000 (11:30 +0200)]
alu: postsim geht jetzt zwar, trotzdem haufweise warnings...

"** Warning: There is an 'U'|'X'|'W'|'Z'|'-' in an arithmetic operand, the result will be 'X'(es)."

5451mal...

14 years agoalu: syntactic sugar
Bernhard Urban [Sun, 18 Apr 2010 22:40:29 +0000 (00:40 +0200)]
alu: syntactic sugar

14 years agoget(reviews): irgendwie lustig wie unterschiedlich die reviews ausgefallen sind! *g*
Bernhard Urban [Sun, 18 Apr 2010 22:17:24 +0000 (00:17 +0200)]
get(reviews): irgendwie lustig wie unterschiedlich die reviews ausgefallen sind! *g*

14 years agomakefile: bessere abhaengigkeiten fuer quartus-target
Bernhard Urban [Sun, 18 Apr 2010 22:10:47 +0000 (00:10 +0200)]
makefile: bessere abhaengigkeiten fuer quartus-target

14 years agoreview: finale version review_abgabe
Bernhard Urban [Fri, 16 Apr 2010 20:19:44 +0000 (22:19 +0200)]
review: finale version

14 years agomakefile: more fun with quartus
Bernhard Urban [Fri, 16 Apr 2010 20:03:27 +0000 (22:03 +0200)]
makefile: more fun with quartus

14 years agomakefile: quartus haut doch hin unter mein linux *freu* ;)
Bernhard Urban [Fri, 16 Apr 2010 18:31:34 +0000 (20:31 +0200)]
makefile: quartus haut doch hin unter mein linux *freu* ;)

14 years agofolien: verifikation und kleine anpassung am Makefile fuer "hwmodskel" release
Bernhard Urban [Fri, 16 Apr 2010 15:45:02 +0000 (17:45 +0200)]
folien: verifikation und kleine anpassung am Makefile fuer "hwmodskel" release
http://www.informatik-forum.at/showthread.php?79870-hwmodskel

14 years agoreview: bbcode und kleinere anpassnungen
Bernhard Urban [Fri, 16 Apr 2010 11:43:53 +0000 (13:43 +0200)]
review: bbcode und kleinere anpassnungen

bitte textwidth=80 verwende, sonst schauts in myTI scheisse aus...

14 years agoweitere kommentare im review
Alex [Thu, 15 Apr 2010 16:54:44 +0000 (18:54 +0200)]
weitere kommentare im review

14 years agoTODOs und kleine anpassungen bei TBs fuer die ALU
Bernhard Urban [Wed, 14 Apr 2010 21:28:38 +0000 (23:28 +0200)]
TODOs und kleine anpassungen bei TBs fuer die ALU

14 years agoreview: designspec.txt
Bernhard Urban [Wed, 14 Apr 2010 21:19:54 +0000 (23:19 +0200)]
review: designspec.txt

14 years agoreview: hwmodspec.txt
Bernhard Urban [Wed, 14 Apr 2010 19:32:04 +0000 (21:32 +0200)]
review: hwmodspec.txt

14 years agoVeraenderungen an den reviews.
Alex [Wed, 14 Apr 2010 09:48:59 +0000 (11:48 +0200)]
Veraenderungen an den reviews.

Ich habe mal meinen senf zu den reviews dazu gegeben. Ich denke die gehoeren noch ueberarbeitet aber sie sollen zumindest mal erlauben einen groben ueberblick meiner gedanken zu bringen. die zeilen werden noch in die passenden kategorien gebracht.

14 years agoquartusskripte: angepasst fuer webedition und tilab (weil die webedition das fpga...
Bernhard Urban [Mon, 12 Apr 2010 16:23:00 +0000 (18:23 +0200)]
quartusskripte: angepasst fuer webedition und tilab (weil die webedition das fpga vom labor nicht unterstuetzt)

14 years agoalu/entity: interface angepasst.
Bernhard Urban [Mon, 12 Apr 2010 12:45:15 +0000 (14:45 +0200)]
alu/entity: interface angepasst.

laut lva-leitung soll man keine enums im interface verwenden.

14 years agomakefile: verbessert
Bernhard Urban [Mon, 12 Apr 2010 00:10:24 +0000 (02:10 +0200)]
makefile: verbessert

kleines Howto:
o beh-sim wird so aufgerufen: beh_$(FILE)
- Fuehrt beh-sim fuer $(FILE) aus. Dafuer muss beh_$(FILE)_tb.vhd und beh_$(FILE)_tb.do
  existieren.
- Instanzname der tb_entity muss immer "sim" sein.
- Instanzname der instanzierten Komponente muss immer "inst" sein.
- Files die kompiliert werden sollen, muessen in $(BEH_IFILES) angegeben werden (Achtung: keine
  Testbenches angeben!)

o post-sim wird aehnlich aufgerufen: post_$(FILE)
- hier ist zu beachten, dass das entsprechende VHO bzw. SDO File von Quartus schon generiert
  wurde (per ~hwmod/quartus/windows.cmd projekt erstellen, mit Quartus dann die Projektdatei
  oeffnen und alles builden)
- Instanzname der tb_entity muss immer "sim" sein.
- Instanzname der instanzierten Komponente muss immer "inst" sein.
- koennte noch sein dass hier noch etwas angepasst werden muss
- Files die kompiliert werden sollen, muessen in $(POST_IFILES) angegeben werden. Im
  Allgemeinen werden das globale Definitionen sein (z.b. fuer Typen, Konstanten, etc. die fuer
  die Testbenches benoetigt werden), da die sich zu simulierenden Instanzen im VHO-File
  befinden. (Achtung: keine Testbenches angeben!)

Beispiele:
$ make beh_alu
$ make post_alu
$ make clean #loescht alle simulationsdateien

14 years agopost sim: simulation verhaelt sich leider nicht wie gewuenscht
Bernhard Urban [Sun, 11 Apr 2010 15:07:21 +0000 (17:07 +0200)]
post sim: simulation verhaelt sich leider nicht wie gewuenscht

nachdem ich schon den ganzen nachmittag verschissen hab, die postlayout simulation zum laufen zu
kriegen, hier mal eine zusammenfassung meiner erkenntnisse:

* quartus erstellt simulationsdaten (wenn das tcl-skript verwendet wird) fuer modelsim im
  verzeichnis ~hwmod/quartus/calc/simulation/modelsim
* modelsim starten
* change directory (z.b. ~hwmod/sim/post)
* File -> New -> Lib
* Compile -> Compile und folgende files kompilieren
o ~hwmod/quartus/calc/simulation/modelsim/calc.vho
o ~hwmod/src/gen_pkg.vhd
o ~hwmod/src/alu_tb_post.vhd
* Simulate -> Start Simulation
o in den tab "SDF" wechseln und die datei ~hwmod/quartus/calc/simulation/modelsim/calc_vhd.sdo
  waehlen und in das feld "apply to region" "/bla" eingeben ("bla" ist dabei die instanz in der
  testbench)
o nun unter dem tab "Design" work -> alu_tb -> sim und die testbench waehlen und die simulation
  starten

das groesste problem war dabei, dass die entity in der calc.vho zu folgende wird:
> ENTITY  alu IS
> PORT (
>  sys_clk : IN std_logic;
>  sys_res_n : IN std_logic;
>  \opcode.NOP\ : IN std_logic;
>  \opcode.SUB\ : IN std_logic;
>  \opcode.ADD\ : IN std_logic;
>  \opcode.MUL\ : IN std_logic;
>  \opcode.DIV\ : IN std_logic;
>  \opcode.DONE\ : IN std_logic;
>  op1 : IN std_logic_vector(31 DOWNTO 0);
>  op2 : IN std_logic_vector(31 DOWNTO 0);
>  op3 : OUT std_logic_vector(31 DOWNTO 0);
>  do_calc : IN std_logic;
>  calc_done : OUT std_logic
>  );
> END alu;

statt wie original:
> package gen_pkg is
>         type alu_ops is (NOP, SUB, ADD, MUL, DIV, DONE);
>         constant CBITS : integer := 32;
>         subtype csigned is signed((CBITS-1) downto 0);
> end package gen_pkg;
>
> entity alu is
>         port
>         (
>                 sys_clk : in std_logic;
>                 sys_res_n : in std_logic;
>                 opcode : in alu_ops;
>                 op1 : in csigned;
>                 op2 : in csigned;
>                 op3 : out csigned;
>                 do_calc : in std_logic;
>                 calc_done : out std_logic
>         );
> end entity alu;

das hat die folge dass man die testbench der beh-sim nicht verwenden kann UND dass ein ewig lange
fehlerliste kommt, wodurch es schwer war, festzustellen worin die fehlerursache ueberhaupt nun liegt.

es ist auch nicht besonders praktisch wie sich die entity defintion entartet... trotzdem hab ich mal
die testbench der beh-sim dafuer angepasst. die simulation dazu verhaelt sich leider nicht
gewuenscht, und ich hab im moment auch keine ahnung woran das liegen koennte :/

14 years agoreview: zwei pdfs geaddet und textdateien angelegt zum gemeinsamen ausfuellen ;)
Bernhard Urban [Sun, 11 Apr 2010 12:32:53 +0000 (14:32 +0200)]
review: zwei pdfs geaddet und textdateien angelegt zum gemeinsamen ausfuellen ;)

14 years agoalu/div: weniger code und weniger logic elements
Bernhard Urban [Sun, 11 Apr 2010 12:22:44 +0000 (14:22 +0200)]
alu/div: weniger code und weniger logic elements

4% (423/10570) logic elements @ 81.59MHz, klingt schon mal besser :)

14 years agoalu/sync: warum hat sich da keiner der beiden tools aufgeregt? wird das nicht sonst...
Bernhard Urban [Sun, 11 Apr 2010 03:47:08 +0000 (05:47 +0200)]
alu/sync: warum hat sich da keiner der beiden tools aufgeregt? wird das nicht sonst ein latch?

14 years agoalu/div: dision in hardwaregerechte art und weise
Bernhard Urban [Sun, 11 Apr 2010 03:03:44 +0000 (05:03 +0200)]
alu/div: dision in hardwaregerechte art und weise

... trotzdem sind knappe 25% der logic elemente im quartus belegt :(
(zwar fuer ein kleineres fpga, aber das im tilab hat afaik 'nur' doppelt so viele)
immerhin laeuft das design mit 65.70MHz (33MHz muessen wir schaffen), klingt aber auch nicht so toll :/

14 years agoquartus skript fuer linux:
Bernhard Urban [Sat, 10 Apr 2010 19:51:03 +0000 (21:51 +0200)]
quartus skript fuer linux:
... auch wenns inzwischen nix bringt (eventuell im tilab)

14 years agoquartus fuer windows:
Bernhard Urban [Sat, 10 Apr 2010 19:45:23 +0000 (21:45 +0200)]
quartus fuer windows:
o cmd starten und windows.cmd ausfuehren
o ins erstellte projekt verzeichnis (quartus/calc) und calc.qpf (quartus projektfile) oeffnen

14 years agocalc: fake top entity fuer synthese und ACHTUNG:
Bernhard Urban [Sat, 10 Apr 2010 18:45:28 +0000 (20:45 +0200)]
calc: fake top entity fuer synthese und ACHTUNG:

die quartus version fuer linux scheint unbrauchbar zu sein.
der build prozess bricht mit der meldung:
"Error: Current module quartus_map ended unexpectedly"
ab. das passiert leider auch mit dem demo projekt der lva leitung,
duerfte also nicht am code liegen... in der windows version geht
beides problemlos :/
d.h. ich passe mal das skript fuer die windows version... wird wohl
nix anderes uebrig bleiben als es nativ oder virtuell laufen zu lassen :(

ABER: da ich nicht viel ueber den fehler per google gefunden habe, koennte
es auch ein problem mit meinem lokalen system sein.

uebrigens: die linux version im tilab ist eine kostenpflichtige version
(mit der es dann wahrscheinlich auch funktionieren wird).

14 years agoalu: fix fuer synthese
Bernhard Urban [Sat, 10 Apr 2010 18:42:17 +0000 (20:42 +0200)]
alu: fix fuer synthese

14 years agospec/alu: extriges register fuer ergebnis
Bernhard Urban [Sat, 10 Apr 2010 16:21:18 +0000 (18:21 +0200)]
spec/alu: extriges register fuer ergebnis

die alte loesung wuerde zwar auch funktionieren, wuerde aber "mehr" programmieraufwand bedeuten, da
bei dieser variante zwei treiber existieren (z.b. muesste der parser vorher op2 auf Z setzen, sodass
es beim schreiben vom modul ALU keine konflikte gibt).

14 years agodoc: modelsim handbuecher
Bernhard Urban [Sat, 10 Apr 2010 14:36:17 +0000 (16:36 +0200)]
doc: modelsim handbuecher

14 years agoalu: bessere testbench
Bernhard Urban [Sat, 10 Apr 2010 14:36:37 +0000 (16:36 +0200)]
alu: bessere testbench
alu: interne struktur leicht veraendert. ack signal wieder entfernt (doch nicht noetig)

14 years agoalu: besseres geruest
Bernhard Urban [Fri, 9 Apr 2010 17:04:30 +0000 (19:04 +0200)]
alu: besseres geruest

calc_done geht leider nicht als inout, das hat leider nicht wirklich hin weil sich dann modelsim
aufregt, es seien zwei treiber vorhanden. deshalb gibt es nun ein ack-signal aka. "ack"

selbes problem fuer op2 (man braucht jetzt einen drittes register fuer das ergebnis).

mal schauen ob das doch irgendwie geht... (std_logic vs std_ulogic hab ich noch nicht ganz
durchschaut)

14 years agodoc: Digital Logic & Microprocessor Design With VHDL - Hwang.pdf und eine erklaerung...
Bernhard Urban [Tue, 6 Apr 2010 13:06:37 +0000 (15:06 +0200)]
doc: Digital Logic & Microprocessor Design With VHDL - Hwang.pdf und eine erklaerung wie binaere division funktioniert

14 years agospec: makefile fix und todo geloescht
Bernhard Urban [Thu, 1 Apr 2010 22:51:51 +0000 (00:51 +0200)]
spec: makefile fix und todo geloescht

14 years agomakefile fuer behsim
Bernhard Urban [Thu, 1 Apr 2010 21:19:48 +0000 (23:19 +0200)]
makefile fuer behsim

* vsim, vcom, usw. muessen in $PATH sein (ueberlichweise ist das
  /opt/altera9.1/modelsim_ase/linux/).

* in IFILES gehoeren alle namen der vhdl dateien rein die kompiliert werden sollen, dabei ist die
  reihenfolge ausschlaggebend.

* "make behsim" bzw. "make" kompiliert alle dateien die noetig sind. beim ersten aufruf bzw. nach
  "make clean" werden libraries und mapping der libray automatisch vorgenommen. als directory wird
  hierfuer ~hwmod/sim/beh verwendet (und wird nicht versioniert).

* "make startms" startet modelsim mit der behsim. modelsim muss aber nicht neugestartet werden
  falls sourcefiles aktualisiert werden, sondern es reicht ein "make behsim" bzw. "make" im
  ~hwmod/src verzeichnis und dann ein "restart -f" in der konsole von modelsim selbst.

* im moment wird noch ein do file fuer die simulation der ALU beim aufruf von vsim uebergeben. das
  is leider noch nicht sehr generisch und wird zu zeiten angepasst.

* das ganze duerfte auch im TILAB lauffaehig sein.

14 years agospec env: pdfs und pngs werden nicht mehr ins repo gepusht sondern vom Makefile gener...
Bernhard Urban [Thu, 1 Apr 2010 21:17:23 +0000 (23:17 +0200)]
spec env: pdfs und pngs werden nicht mehr ins repo gepusht sondern vom Makefile generiert [1]

@alexander: ich hoffe das passt bei dir.

[1]: fabian hatte zum groessten teil windows im betrieb und pstricks zeugs nicht installiert.

Revert "windows und so"
This reverts commit a16e4c9e5eddb4ef32dbc34579dcaa002ddba3ce.

Revert "don't ignore pdf's and push them"
This reverts commit 816112a0af2d06eb76d657275b2c541994d25b2d.

14 years agospeck: weil wingit das so will :/
Bernhard Urban [Wed, 31 Mar 2010 18:35:13 +0000 (20:35 +0200)]
speck: weil wingit das so will :/

14 years agoalu: erster (schlechter) versuch -- sim haut auch halbwegs hin
Bernhard Urban [Wed, 31 Mar 2010 18:34:34 +0000 (20:34 +0200)]
alu: erster (schlechter) versuch -- sim haut auch halbwegs hin

14 years agospass und so spec-abgabe1
Bernhard Urban [Fri, 26 Mar 2010 20:33:52 +0000 (21:33 +0100)]
spass und so

14 years agotestfaelle
Bernhard Urban [Fri, 26 Mar 2010 20:26:29 +0000 (21:26 +0100)]
testfaelle