2022-06-05 23:10:11 +00:00
|
|
|
// Version 0.0.1
|
|
|
|
#include "libraries\frisc\vjezba1\FRISC.cdl"
|
2022-06-13 22:53:46 +00:00
|
|
|
#include "libraries\frisc\vjezba1\dma.cdl"
|
2022-06-05 23:10:11 +00:00
|
|
|
#include "libraries\frisc\vjezba1\memory.cdl"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
component System
|
|
|
|
{
|
|
|
|
clock 100MHz;
|
|
|
|
//glavnaSabirnica
|
|
|
|
wire<32> ADR;
|
|
|
|
wire<32> DATA;
|
|
|
|
wire READ;
|
|
|
|
wire WRITE;
|
|
|
|
wired_and WAIT;
|
|
|
|
wired_and INT0;
|
|
|
|
wired_and INT1;
|
|
|
|
wired_and INT2;
|
|
|
|
wired_and INT3;
|
|
|
|
wire<3> SIZE;
|
|
|
|
wire --IACK;
|
|
|
|
wire --BREQ;
|
|
|
|
wire --BACK;
|
|
|
|
|
|
|
|
|
2022-06-13 22:53:46 +00:00
|
|
|
//PIOSabirnica
|
|
|
|
wire<8> PIO_DATA;
|
|
|
|
wire READY;
|
|
|
|
wire STROBE;
|
|
|
|
|
|
|
|
|
2022-06-05 23:10:11 +00:00
|
|
|
//directRam
|
|
|
|
wire INT;
|
|
|
|
|
|
|
|
|
|
|
|
// components --------------------------------------------
|
2022-06-13 22:53:46 +00:00
|
|
|
subcomponent Memorija memorija<false, 1, 1024, 8, 0>(ADR, DATA, READ, WRITE, SIZE, WAIT, INT, *, *, *);
|
2022-06-05 23:10:11 +00:00
|
|
|
subcomponent FRISC procesor(ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, INT1, INT2, INT3, --IACK, 1, *, INT, *, *, *);
|
2022-06-13 22:53:46 +00:00
|
|
|
subcomponent DMA dma<1024>(ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, --BREQ, --BACK, 0, 0, *, *);
|
2022-06-05 23:10:11 +00:00
|
|
|
|
|
|
|
display {
|
2022-06-13 22:53:46 +00:00
|
|
|
component { x: -104; y: -102; ref: "procesor"; }
|
|
|
|
component { x: 39; y: 199; ref: "memorija"; }
|
|
|
|
component { x: -352; y: 13; ref: "dma"; }
|
2022-06-05 23:10:11 +00:00
|
|
|
|
|
|
|
// glavnaSabirnica bus
|
|
|
|
|
|
|
|
rectangle {
|
2022-06-13 22:53:46 +00:00
|
|
|
x: -106; y: 80;
|
2022-06-05 23:10:11 +00:00
|
|
|
w: 100; h: 20;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2022-06-13 22:53:46 +00:00
|
|
|
// PIOSabirnica bus
|
|
|
|
|
|
|
|
|
2022-06-05 23:10:11 +00:00
|
|
|
// directRam bus
|
|
|
|
|
|
|
|
|
2022-06-13 22:53:46 +00:00
|
|
|
line {x1:-54; y1:14; x2:-55; y2:90;}
|
|
|
|
line {x1:89; y1:183; x2:-55; y2:90;}
|
|
|
|
line {x1:-236; y1:51; x2:-55; y2:90;}
|
|
|
|
line {x1:23; y1:227; x2:12; y2:-52;}
|
2022-06-05 23:10:11 +00:00
|
|
|
}
|
|
|
|
}
|