mirror of
https://github.com/hneemann/Digital.git
synced 2025-09-15 07:48:29 -04:00
added bitcount to IOs
This commit is contained in:
parent
25b03f205f
commit
5c65720a51
@ -28,6 +28,12 @@
|
|||||||
<string>intFormat</string>
|
<string>intFormat</string>
|
||||||
<intFormat>bin</intFormat>
|
<intFormat>bin</intFormat>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="500" y="140"/>
|
<pos x="500" y="140"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -46,6 +52,12 @@
|
|||||||
<string>intFormat</string>
|
<string>intFormat</string>
|
||||||
<intFormat>bin</intFormat>
|
<intFormat>bin</intFormat>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="400" y="120"/>
|
<pos x="400" y="120"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -60,6 +72,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>4</int>
|
<int>4</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=bitsNeededFor(args.dataBits-1);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="400" y="160"/>
|
<pos x="400" y="160"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
|
@ -33,6 +33,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>8</int>
|
<int>8</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="600" y="140"/>
|
<pos x="600" y="140"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -47,6 +53,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>8</int>
|
<int>8</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="280" y="120"/>
|
<pos x="280" y="120"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
|
@ -33,6 +33,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>8</int>
|
<int>8</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="600" y="140"/>
|
<pos x="600" y="140"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -47,6 +53,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>8</int>
|
<int>8</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="300" y="120"/>
|
<pos x="300" y="120"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
|
@ -33,6 +33,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>8</int>
|
<int>8</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="600" y="140"/>
|
<pos x="600" y="140"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -47,6 +53,12 @@
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>8</int>
|
<int>8</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="300" y="120"/>
|
<pos x="300" y="120"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
|
@ -49,6 +49,12 @@ if (isPresent(args)) {
|
|||||||
<string>intFormat</string>
|
<string>intFormat</string>
|
||||||
<intFormat>bin</intFormat>
|
<intFormat>bin</intFormat>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="540" y="140"/>
|
<pos x="540" y="140"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -67,6 +73,12 @@ if (isPresent(args)) {
|
|||||||
<string>intFormat</string>
|
<string>intFormat</string>
|
||||||
<intFormat>bin</intFormat>
|
<intFormat>bin</intFormat>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.dataBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="180" y="100"/>
|
<pos x="180" y="100"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -81,6 +93,12 @@ if (isPresent(args)) {
|
|||||||
<string>Bits</string>
|
<string>Bits</string>
|
||||||
<int>4</int>
|
<int>4</int>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>generic</string>
|
||||||
|
<string>if (isPresent(args)) {
|
||||||
|
this.Bits=int(args.shiftBits);
|
||||||
|
}</string>
|
||||||
|
</entry>
|
||||||
</elementAttributes>
|
</elementAttributes>
|
||||||
<pos x="180" y="140"/>
|
<pos x="180" y="140"/>
|
||||||
</visualElement>
|
</visualElement>
|
||||||
@ -96,8 +114,23 @@ if (isPresent(args)) {
|
|||||||
dataBits = args.dataBits;
|
dataBits = args.dataBits;
|
||||||
shiftBits = args.shiftBits-1;
|
shiftBits = args.shiftBits-1;
|
||||||
dir=args.dir;
|
dir=args.dir;
|
||||||
if (args.shiftBits=1) {
|
if (args.shiftBits=2) {
|
||||||
setCircuit("shift-nop-inc.dig");
|
|
||||||
|
export shift := 1;
|
||||||
|
if (args.dir="right") {
|
||||||
|
setCircuit("shift-fixed-right-inc.dig");
|
||||||
|
} else {
|
||||||
|
if (args.dir="arith") {
|
||||||
|
setCircuit("shift-fixed-arith-right-inc.dig");
|
||||||
|
} else {
|
||||||
|
if (args.dir!="left") {
|
||||||
|
panic("only \"left\", \"right\" or \"arith\" is allowed as direction, not \""+args.dir+"\"!");
|
||||||
|
}
|
||||||
|
setCircuit("shift-fixed-left-inc.dig");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}</string>
|
}</string>
|
||||||
</entry>
|
</entry>
|
||||||
|
@ -1,69 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<circuit>
|
|
||||||
<version>1</version>
|
|
||||||
<attributes>
|
|
||||||
<entry>
|
|
||||||
<string>isGeneric</string>
|
|
||||||
<boolean>true</boolean>
|
|
||||||
</entry>
|
|
||||||
</attributes>
|
|
||||||
<visualElements>
|
|
||||||
<visualElement>
|
|
||||||
<elementName>Out</elementName>
|
|
||||||
<elementAttributes>
|
|
||||||
<entry>
|
|
||||||
<string>Label</string>
|
|
||||||
<string>D</string>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<string>Bits</string>
|
|
||||||
<int>16</int>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<string>intFormat</string>
|
|
||||||
<intFormat>bin</intFormat>
|
|
||||||
</entry>
|
|
||||||
</elementAttributes>
|
|
||||||
<pos x="220" y="100"/>
|
|
||||||
</visualElement>
|
|
||||||
<visualElement>
|
|
||||||
<elementName>In</elementName>
|
|
||||||
<elementAttributes>
|
|
||||||
<entry>
|
|
||||||
<string>Label</string>
|
|
||||||
<string>D_in</string>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<string>Bits</string>
|
|
||||||
<int>16</int>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<string>intFormat</string>
|
|
||||||
<intFormat>bin</intFormat>
|
|
||||||
</entry>
|
|
||||||
</elementAttributes>
|
|
||||||
<pos x="180" y="100"/>
|
|
||||||
</visualElement>
|
|
||||||
<visualElement>
|
|
||||||
<elementName>In</elementName>
|
|
||||||
<elementAttributes>
|
|
||||||
<entry>
|
|
||||||
<string>Label</string>
|
|
||||||
<string>sh</string>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<string>Bits</string>
|
|
||||||
<int>5</int>
|
|
||||||
</entry>
|
|
||||||
</elementAttributes>
|
|
||||||
<pos x="180" y="140"/>
|
|
||||||
</visualElement>
|
|
||||||
</visualElements>
|
|
||||||
<wires>
|
|
||||||
<wire>
|
|
||||||
<p1 x="180" y="100"/>
|
|
||||||
<p2 x="220" y="100"/>
|
|
||||||
</wire>
|
|
||||||
</wires>
|
|
||||||
<measurementOrdering/>
|
|
||||||
</circuit>
|
|
Loading…
x
Reference in New Issue
Block a user