From bf029929a71a9ef90395c14be7193a3c0b293f4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Borna=20Rajkovi=C4=87?= Date: Wed, 13 Apr 2022 00:25:21 +0200 Subject: [PATCH] Added examples and documentation --- docs/ComdelSchemaLanguage.docx | Bin 0 -> 56518 bytes .../simplified FRISC model/frisc_library.csl | 310 ++++++++++++++++++ examples/simplified FRISC model/schema.csl | 55 ++++ 3 files changed, 365 insertions(+) create mode 100644 docs/ComdelSchemaLanguage.docx create mode 100644 examples/simplified FRISC model/frisc_library.csl create mode 100644 examples/simplified FRISC model/schema.csl diff --git a/docs/ComdelSchemaLanguage.docx b/docs/ComdelSchemaLanguage.docx new file mode 100644 index 0000000000000000000000000000000000000000..63e214a1d758f40dbd82706bb2cd3401ab2d168d GIT binary patch literal 56518 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ǝiH4t1v_}lL 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, + DATA<32>, + READ, + WRITE, + WAIT wired_and, + INT0 wired_and, + INT1 wired_and, + INT2 wired_and, + INT3 wired_and, + SIZE<3>, + IACK, + BREQ, + BACK + } +} +@bus PIOSabirnica automatic { + @wires { + PIO_DATA<8>, + READY, + STROBE + } +} + +@connection (FRISC.glavniPin, glavnaSabirnica) { + @wires{ADR, DATA, READ, WRITE, SIZE, WAIT, INT0, INT1, INT2, INT3, IACK, 1, null} +} +@connection (Memorija.glavniPin, glavnaSabirnica) { + @wires{ADR, DATA, READ, WRITE, SIZE, WAIT} +} +@connection (DMA.glavniPin, glavnaSabirnica) { + @attribute interupt wire default INT0 { + @popup automatic { + @title "Povezivanje interupt signala" + @text "Odaberite sabirničku liniju na koju želite spojiti priključak INT od skopa DMA" + @enumerated { + "INT0" = INT0, + "INT1" = INT1, + "INT2" = INT2, + "Hardwire 1" = 1, + "None" = null + } + } + } + @wires{ADR, DATA, READ, WRITE, SIZE, WAIT, interupt, BREQ, BACK} +} \ No newline at end of file diff --git a/examples/simplified FRISC model/schema.csl b/examples/simplified FRISC model/schema.csl new file mode 100644 index 0000000..30f2771 --- /dev/null +++ b/examples/simplified FRISC model/schema.csl @@ -0,0 +1,55 @@ +@source "frisc_library.csl" + +@schema { + @instance proc FRISC { + @position (0, 0) + } + + @instance mem Memorija { + @position (0, 250) + @attribute kapacitet 1024 + @attribute size 8 + @attribute pocetnaAdresa 1023 + } + + @instance bus glavnaSabirnica { + @position (0, 200) + @size 100 + } + + @wire wire_001 { + @position (50, 116) + @display { + /* + line { + color: blue; + points: 100; + }*/ + line { + x1: 0; y1: 0; x2: 0; y2: 84; + } + } + } + + @wire wire_002 { + @position (50, 220) + @display { + /* + line { + color: blue; + points: 100; + }*/ + line { + x1: 0; y1: 0; x2: 0; y2: 14; + } + } + } + + @connection (proc.glavniPin, bus) { + @wire wire_001 + } + + @connection (mem.glavniPin, bus) { + @wire wire_002 + } +} \ No newline at end of file