Demo Programm zum Zeichnen von Computergrafik mit dem TerasIC DE1 Demo-Board SW0 auf dem Board schaltet um zwischen funktionaler und gebufferter Grafik: Sourcecode Fred Feuerstein Auto: DE1_Default Sourcecode Auto V.2: DE1_Default_v2 Folgende Bilder zeigen die Phasen der Framebuffer-Linien Programmierung, basierend auf der Geradengleichung.
Category Archives: Verilog
Pipeline
always @(posedge or negedge) if (posedge) Initialisierungsdaten pro pipeline-kanal: reg [2:0] posedge_counter; reg [2:0] negedge_counter; reg program_status1; reg program_status2; reg daten_status1; reg daten_status2; 1. posedge: prefetch – Instruction -> Hilfsregister – PC++ – posedge_counter++ 1. negedge: fetch – kopieren in INSTRUCTION-Register
Experienced / entertaining error messages
Error: Can’t place 363 pins with 2.5 V I/O standard because Fitter has only 322 such free pins available for general purpose I/O placement Error: Can’t fit design in device
CPU, die Fibonacci Reihe berechnet
Die im folgende beschriebene CPU ist so programmiert, dass sie eine Fibonacci-Reihe berechnet. Die CPU verfügt über folgende Register: reg [7:0] DATA_ADR; // Daten-ROM Adressregister reg [7:0] PROG_ADR; // Programm-ROM Adressregister (PC) reg [15:0] CMD; // Befehlsregister reg [31:0] ARG1; // Argument 1 reg [15:0] ARG2; // Argument 2 reg [31:0] RESULT; // Resultat (Akkumulator) […]
CPU
Simple CPU Core in Verilog: ex2_cpu.zip
MAC
Multiply and accumulate in Verilog: Files: ex2_mac.zip check: AC0 15 16 1E 20 AC1 0A 0B 0F 10 T1 01 01 02 02 T1*AC0 15 16 3C 40 +AC1 1F 21 4B 10 OAC0 1F 21 4B 50
CPU Runden
32 Bit Zahl runden: ADD 2^15 clear bit 15-0 z.B. TMS320 commands: LD||MAS[R] MACC[R]
Lösungsansatz Befehlsdecoder mit Multiplikation
Idee: AND-Gates schalten das Multiplikationsresultat ein, wenn das 6. Bit gesetzt ist. OR-Gates lassen das Zuschalten anderer Operationen zu. Das Resultat wird in ein Register aus Flip-Flops gespeichert. ex2.zip