Added single automatic connection dialog + bugfixes
This commit is contained in:
1 parent
3172d7e4cf
commit
9b7ede933a
18 files changed
+253
-117
No files matched your search
@@ -1,54 +0,0 @@
|
||||
// Version 0.0.1
|
||||
#include "libraries\frisc\vjezba1\FRISC.cdl"
|
||||
#include "libraries\frisc\vjezba1\memory.cdl"
|
||||
|
||||
|
||||
|
||||
component System
|
||||
{
|
||||
clock 100MHz;
|
||||
//bus
|
||||
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;
|
||||
|
||||
|
||||
// components --------------------------------------------
|
||||
subcomponent Memorija mem<false, 1, 1024, 8, 1024>(ADR, DATA, READ, WRITE, SIZE, WAIT, 94534054858378, 0, null, null);
|
||||
subcomponent FRISC procesor_002(ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, INT1, INT2, INT3, --IACK, 1, *, 94534054858378, 0, null, null);
|
||||
subcomponent FRISC procesor_001(ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, INT1, INT2, INT3, --IACK, 1, *, 94534054858378, 0, null, null);
|
||||
subcomponent FRISC procesor_000(ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, INT1, INT2, INT3, --IACK, 1, *, 94534054858378, 0, null, null);
|
||||
subcomponent FRISC procesor(ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, INT1, INT2, INT3, --IACK, 1, *, 94534054858378, 0, null, null);
|
||||
|
||||
display {
|
||||
component { x: 0; y: 0; ref: "procesor_002"; }
|
||||
component { x: 0; y: 250; ref: "mem"; }
|
||||
component { x: -89; y: 74; ref: "procesor_001"; }
|
||||
component { x: -175; y: 195; ref: "procesor_000"; }
|
||||
component { x: -195; y: 63; ref: "procesor"; }
|
||||
|
||||
// bus bus
|
||||
|
||||
rectangle {
|
||||
x: 0; y: 200;
|
||||
w: 100; h: 20;
|
||||
}
|
||||
|
||||
|
||||
line {x1:50; y1:116; x2:50; y2:210;}
|
||||
line {x1:50; y1:234; x2:50; y2:210;}
|
||||
line {x1:-39; y1:190; x2:50; y2:210;}
|
||||
line {x1:-145; y1:179; x2:50; y2:210;}
|
||||
line {x1:-125; y1:311; x2:50; y2:210;}
|
||||
}
|
||||
}
|
||||
@@ -8,13 +8,12 @@
|
||||
@address pomocniAS(0xFFFF0000,0xFFFFFFFF)
|
||||
|
||||
@messages {
|
||||
Ok: "OK";
|
||||
Yes: "Da";
|
||||
No: "Ne";
|
||||
Cancel: "Otkaži";
|
||||
ok: "OK";
|
||||
yes: "Da";
|
||||
no: "Ne";
|
||||
cancel: "Odustani";
|
||||
noneBusLine: "nespojen";
|
||||
noneValue: "nema vrijednosti";
|
||||
generalPinNotConnected: "Opći pin nije spojen niti na jednu sabirnicu";
|
||||
}
|
||||
|
||||
@component FRISC processor {
|
||||
@@ -229,7 +228,7 @@
|
||||
@title "Početna adresa DMA-kontrolera"
|
||||
@text "Zadajte početnu adresu DMA-kontrolera"
|
||||
@rule {
|
||||
if(contains_address(glavniAS, pocetnaAdresa)) {
|
||||
if(!contains_address(glavniAS, pocetnaAdresa)) {
|
||||
error("Početna adresa memorije je izvan 32 bitnog adresnog prostora")
|
||||
}
|
||||
}
|
||||
@@ -239,7 +238,7 @@
|
||||
}
|
||||
}
|
||||
@rule {
|
||||
if(unique(glavniAS, pocetnaAdresa, 32)) {
|
||||
if(!unique(glavniAS, pocetnaAdresa, 32)) {
|
||||
error("Adrese memorije nisu jedinstvene u adresnom prostoru (preklapaju se s nekom drugom komponentom)")
|
||||
}
|
||||
}
|
||||
@@ -344,7 +343,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
@bus directRam automatic {
|
||||
@bus directRam singleAutomatic {
|
||||
@instanceName directRam
|
||||
@wires {
|
||||
INT
|
||||
@@ -381,6 +380,19 @@
|
||||
}
|
||||
|
||||
@connection (FRISC.memDirect, directRam, Memorija.memDirect) {
|
||||
@wires{INT}
|
||||
@wires{INT}
|
||||
@attribute procConn string default "INT" {
|
||||
@popup automatic {
|
||||
@title "Frisc INT"
|
||||
@text "Processor interupt 1"
|
||||
}
|
||||
}
|
||||
@attribute memConn string default "INT" {
|
||||
@popup automatic {
|
||||
@title "Mem INT"
|
||||
@text "Memory interupt 1"
|
||||
}
|
||||
}
|
||||
|
||||
@wires{"INT", null, 1, "INT2"}
|
||||
@wires{"INT", null, 1, "INT2"}
|
||||
}
|
||||
@@ -2,13 +2,28 @@
|
||||
|
||||
@schema {
|
||||
@instance procesor FRISC {
|
||||
@position (-112, -89)
|
||||
@attribute _memory memorija2
|
||||
@position (-464, -314)
|
||||
@attribute _memory null
|
||||
}
|
||||
|
||||
@instance procesor FRISC {
|
||||
@position (112, -89)
|
||||
@attribute _memory null
|
||||
}
|
||||
@instance dma DMA {
|
||||
@position (-269, 46)
|
||||
@attribute pocetnaAdresa 0
|
||||
}
|
||||
|
||||
@instance glavnaSabirnica glavnaSabirnica {
|
||||
@position (-579, -160)
|
||||
@size 100
|
||||
}
|
||||
|
||||
@instance PIOSabirnica PIOSabirnica {
|
||||
@position (0, 0)
|
||||
@size 0
|
||||
}
|
||||
|
||||
@connection (dma.glavniPin, glavnaSabirnica) {
|
||||
@attribute interupt INT2
|
||||
}
|
||||
@connection (dma.glavniPin, PIOSabirnica, procesor.glavniPin) {
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user