schema_editor/examples/arm/test.system

75 lines
1.7 KiB
Plaintext
Raw Normal View History

2022-06-19 18:10:44 +00:00
set load_performs_init;
#include "\arm7tdmi.comdel"
#include "\bridge.comdel"
#include "\decoder.comdel"
#include "\memory.comdel"
component System
{
clock 100MHz;
//ahb
wire<32> addr;
wire<32> rdata;
wire<32> wdata;
wire<3> size;
wire write;
wired_or ready;
wired_or irq;
wired_or fiq;
wired_and nmreq;
wire --sel_mem;
wire sel_bridge;
wire sel_dmac;
//apb
wire<32> apb__addr;
wire<32> apb__rdata;
wire<32> apb__wdata;
wire<3> --apb__size;
wire enable;
wire apb__write;
wire sel_gpio_1;
wire sel_gpio_2;
wire sel_ui_in;
wire sel_rtc;
wire sel_ui_out;
// components --------------------------------------------
subcomponent Memory64KiB memorija(addr, rdata, wdata, size, write, ready, --sel_mem);
subcomponent Bridge bridge(addr, rdata, wdata, size, write, ready, sel_bridge, apb__addr, apb__rdata, apb__wdata, --apb__size, enable, apb__write, sel_gpio_1, sel_gpio_2, sel_rtc, sel_ui_in, sel_ui_out, 1, 1, 1, 1, 1);
subcomponent ARM7tdmi arm(addr, rdata, wdata, size, write, ready, irq, fiq, nmreq, *, *) uses memorija;
subcomponent Decoder decoder(addr, nmreq, --sel_mem, sel_bridge, sel_dmac, 1, 1);
display {
component { x: -222; y: -97; ref: "bridge"; }
component { x: -473; y: -283; ref: "arm"; }
component { x: -433; y: 6; ref: "memorija"; }
component { x: -323; y: -217; ref: "decoder"; }
// ahb bus
rectangle {
x: -514; y: -86;
w: 249; h: 20;
}
// apb bus
rectangle {
x: -111; y: -81;
w: 329; h: 20;
}
line {x1:-222; y1:-77; x2:-389; y2:-75;}
line {x1:-162; y1:-77; x2:54; y2:-70;}
line {x1:-428; y1:6; x2:-389; y2:-75;}
line {x1:-418; y1:-152; x2:-389; y2:-75;}
line {x1:-303; y1:-187; x2:-389; y2:-75;}
}
}