diff --git a/blocks/Split/Bus-12/Split-2-10.ice b/blocks/Split/Bus-12/Split-2-10.ice new file mode 100644 index 00000000..cd05d527 --- /dev/null +++ b/blocks/Split/Bus-12/Split-2-10.ice @@ -0,0 +1,247 @@ +{ + "version": "1.2", + "package": { + "name": "Bus12-Split-2-10", + "version": "0.2", + "description": "Bus12-Split-2-10: Split the 12-bits bus into two buses of 2 and 10 wires", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22354.768%22%20height=%22241.058%22%20viewBox=%220%200%20332.59497%20225.99201%22%3E%3Cpath%20d=%22M168.377%2077.643l61.147-60.938C240.21%206.25%20254.56.461%20269.484.5h62.611v26.186l-61.698.046c-8.012-.043-15.705%203.133-21.47%208.81L187.48%2096.857a57.292%2057.292%200%200%201-39.993%2016.139%2057.292%2057.292%200%200%201%2039.993%2016.14l61.448%2061.314c5.765%205.677%2013.458%208.853%2021.47%208.81l61.698.046v26.186h-62.612c-14.924.039-29.463-5.9-40.204-16.28l-60.902-60.863a29.857%2029.857%200%200%200-21.347-8.81L.5%20139.427V86.457h146.524a29.884%2029.884%200%200%200%2021.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "board": "alhambra-ii", + "graph": { + "blocks": [ + { + "id": "1fd13001-cfbd-43e0-af27-83aa4dfae652", + "type": "basic.output", + "data": { + "name": "2", + "virtual": true, + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ] + }, + "position": { + "x": 512, + "y": 16 + } + }, + { + "id": "24625ec6-3e80-42f9-a794-220d07fe4eb9", + "type": "basic.input", + "data": { + "name": "", + "virtual": true, + "range": "[11:0]", + "pins": [ + { + "index": "11", + "name": "NULL", + "value": "NULL" + }, + { + "index": "10", + "name": "NULL", + "value": "NULL" + }, + { + "index": "9", + "name": "NULL", + "value": "NULL" + }, + { + "index": "8", + "name": "NULL", + "value": "NULL" + }, + { + "index": "7", + "name": "NULL", + "value": "NULL" + }, + { + "index": "6", + "name": "NULL", + "value": "NULL" + }, + { + "index": "5", + "name": "NULL", + "value": "NULL" + }, + { + "index": "4", + "name": "NULL", + "value": "NULL" + }, + { + "index": "3", + "name": "NULL", + "value": "NULL" + }, + { + "index": "2", + "name": "NULL", + "value": "NULL" + }, + { + "index": "1", + "name": "NULL", + "value": "NULL" + }, + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "clock": false + }, + "position": { + "x": -32, + "y": 64 + } + }, + { + "id": "2843c6bd-9540-4253-841a-3e057dd63e06", + "type": "basic.output", + "data": { + "name": "0", + "virtual": true, + "range": "[9:0]", + "pins": [ + { + "index": "9", + "name": "NULL", + "value": "NULL" + }, + { + "index": "8", + "name": "NULL", + "value": "NULL" + }, + { + "index": "7", + "name": "NULL", + "value": "NULL" + }, + { + "index": "6", + "name": "NULL", + "value": "NULL" + }, + { + "index": "5", + "name": "NULL", + "value": "NULL" + }, + { + "index": "4", + "name": "NULL", + "value": "NULL" + }, + { + "index": "3", + "name": "NULL", + "value": "NULL" + }, + { + "index": "2", + "name": "NULL", + "value": "NULL" + }, + { + "index": "1", + "name": "NULL", + "value": "NULL" + }, + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ] + }, + "position": { + "x": 512, + "y": 104 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "i", + "range": "[11:0]", + "size": 12 + } + ], + "out": [ + { + "name": "o1" + }, + { + "name": "o0", + "range": "[9:0]", + "size": 10 + } + ] + }, + "params": [], + "code": "\nassign o1 = i[11:10];\nassign o0 = i[9:0];" + }, + "position": { + "x": 136, + "y": 0 + }, + "size": { + "width": 280, + "height": 184 + } + } + ], + "wires": [ + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" + }, + "target": { + "block": "1fd13001-cfbd-43e0-af27-83aa4dfae652", + "port": "in" + } + }, + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" + }, + "target": { + "block": "2843c6bd-9540-4253-841a-3e057dd63e06", + "port": "in" + }, + "size": 10 + }, + { + "source": { + "block": "24625ec6-3e80-42f9-a794-220d07fe4eb9", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 12 + } + ] + } + }, + "dependencies": {} +} \ No newline at end of file diff --git a/blocks/Split/Bus-12/Split-8-4.ice b/blocks/Split/Bus-12/Split-8-4.ice new file mode 100644 index 00000000..6f35e214 --- /dev/null +++ b/blocks/Split/Bus-12/Split-8-4.ice @@ -0,0 +1,198 @@ +{ + "version": "1.2", + "package": { + "name": "Bus12-Split-8-4", + "version": "0.2", + "description": "Bus12-Split-8-4: Split the 12-bits bus into two buses of 8 and 4 wires", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22354.768%22%20height=%22241.058%22%20viewBox=%220%200%20332.59497%20225.99201%22%3E%3Cpath%20d=%22M168.377%2077.643l61.147-60.938C240.21%206.25%20254.56.461%20269.484.5h62.611v26.186l-61.698.046c-8.012-.043-15.705%203.133-21.47%208.81L187.48%2096.857a57.292%2057.292%200%200%201-39.993%2016.139%2057.292%2057.292%200%200%201%2039.993%2016.14l61.448%2061.314c5.765%205.677%2013.458%208.853%2021.47%208.81l61.698.046v26.186h-62.612c-14.924.039-29.463-5.9-40.204-16.28l-60.902-60.863a29.857%2029.857%200%200%200-21.347-8.81L.5%20139.427V86.457h146.524a29.884%2029.884%200%200%200%2021.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "board": "alhambra-ii", + "graph": { + "blocks": [ + { + "id": "a32dee07-914b-4bb8-8585-baa3525cdd00", + "type": "basic.output", + "data": { + "name": "1", + "virtual": true, + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "NULL", + "value": "NULL" + }, + { + "index": "6", + "name": "NULL", + "value": "NULL" + }, + { + "index": "5", + "name": "NULL", + "value": "NULL" + }, + { + "index": "4", + "name": "NULL", + "value": "NULL" + }, + { + "index": "3", + "name": "NULL", + "value": "NULL" + }, + { + "index": "2", + "name": "NULL", + "value": "NULL" + }, + { + "index": "1", + "name": "NULL", + "value": "NULL" + }, + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "inout": false + }, + "position": { + "x": 496, + "y": 16 + } + }, + { + "id": "46011ec6-127b-4e6b-83ca-aed5b18ae4d0", + "type": "basic.input", + "data": { + "name": "", + "range": "[11:0]", + "clock": false, + "size": 12 + }, + "position": { + "x": -32, + "y": 64 + } + }, + { + "id": "28e47118-359c-471a-b3f6-7b6faa9252d0", + "type": "basic.output", + "data": { + "name": "0", + "virtual": true, + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "NULL", + "value": "NULL" + }, + { + "index": "2", + "name": "NULL", + "value": "NULL" + }, + { + "index": "1", + "name": "NULL", + "value": "NULL" + }, + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "inout": false + }, + "position": { + "x": 504, + "y": 104 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "i", + "range": "[11:0]", + "size": 12 + } + ], + "out": [ + { + "name": "o1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 + } + ], + "inoutLeft": [], + "inoutRight": [] + }, + "params": [], + "code": "\nassign o1 = i[11:4];\nassign o0 = i[3:0];" + }, + "position": { + "x": 136, + "y": 0 + }, + "size": { + "width": 280, + "height": 184 + } + } + ], + "wires": [ + { + "source": { + "block": "46011ec6-127b-4e6b-83ca-aed5b18ae4d0", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 12 + }, + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" + }, + "target": { + "block": "a32dee07-914b-4bb8-8585-baa3525cdd00", + "port": "in" + }, + "size": 8 + }, + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" + }, + "target": { + "block": "28e47118-359c-471a-b3f6-7b6faa9252d0", + "port": "in" + }, + "size": 4 + } + ] + } + }, + "dependencies": {} +} \ No newline at end of file