mirror of
https://github.com/hneemann/Digital.git
synced 2025-09-13 23:06:22 -04:00
added bitcount to IOs
This commit is contained in:
parent
25b03f205f
commit
5c65720a51
@ -28,6 +28,12 @@
|
||||
<string>intFormat</string>
|
||||
<intFormat>bin</intFormat>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="500" y="140"/>
|
||||
</visualElement>
|
||||
@ -46,6 +52,12 @@
|
||||
<string>intFormat</string>
|
||||
<intFormat>bin</intFormat>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="400" y="120"/>
|
||||
</visualElement>
|
||||
@ -60,6 +72,12 @@
|
||||
<string>Bits</string>
|
||||
<int>4</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=bitsNeededFor(args.dataBits-1);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="400" y="160"/>
|
||||
</visualElement>
|
||||
|
@ -33,6 +33,12 @@
|
||||
<string>Bits</string>
|
||||
<int>8</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="600" y="140"/>
|
||||
</visualElement>
|
||||
@ -47,6 +53,12 @@
|
||||
<string>Bits</string>
|
||||
<int>8</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="280" y="120"/>
|
||||
</visualElement>
|
||||
|
@ -33,6 +33,12 @@
|
||||
<string>Bits</string>
|
||||
<int>8</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="600" y="140"/>
|
||||
</visualElement>
|
||||
@ -47,6 +53,12 @@
|
||||
<string>Bits</string>
|
||||
<int>8</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="300" y="120"/>
|
||||
</visualElement>
|
||||
|
@ -33,6 +33,12 @@
|
||||
<string>Bits</string>
|
||||
<int>8</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="600" y="140"/>
|
||||
</visualElement>
|
||||
@ -47,6 +53,12 @@
|
||||
<string>Bits</string>
|
||||
<int>8</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="300" y="120"/>
|
||||
</visualElement>
|
||||
|
@ -49,6 +49,12 @@ if (isPresent(args)) {
|
||||
<string>intFormat</string>
|
||||
<intFormat>bin</intFormat>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="540" y="140"/>
|
||||
</visualElement>
|
||||
@ -67,6 +73,12 @@ if (isPresent(args)) {
|
||||
<string>intFormat</string>
|
||||
<intFormat>bin</intFormat>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.dataBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="180" y="100"/>
|
||||
</visualElement>
|
||||
@ -81,6 +93,12 @@ if (isPresent(args)) {
|
||||
<string>Bits</string>
|
||||
<int>4</int>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>generic</string>
|
||||
<string>if (isPresent(args)) {
|
||||
this.Bits=int(args.shiftBits);
|
||||
}</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="180" y="140"/>
|
||||
</visualElement>
|
||||
@ -96,8 +114,23 @@ if (isPresent(args)) {
|
||||
dataBits = args.dataBits;
|
||||
shiftBits = args.shiftBits-1;
|
||||
dir=args.dir;
|
||||
if (args.shiftBits=1) {
|
||||
setCircuit("shift-nop-inc.dig");
|
||||
if (args.shiftBits=2) {
|
||||
|
||||
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>
|
||||
</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