From e4343a43ec427bffd67c8dc3c25aa12bde457fd2 Mon Sep 17 00:00:00 2001 From: Obijuan Date: Sat, 4 Nov 2023 12:41:41 +0100 Subject: [PATCH] uint16: update tests (no verifying error) --- .../08-bits/Alhambra-II/01-Manual-testing.ice | 13462 ++++++------- .../09-bits/Alhambra-II/01-Manual-testing.ice | 15383 +++++++-------- .../10-bits/Alhambra-II/01-Manual-testing.ice | 15390 +++++++-------- .../11-bits/Alhambra-II/01-Manual-testing.ice | 14975 ++++++-------- .../12-bits/Alhambra-II/01-Manual-testing.ice | 16024 +++++++-------- .../13-bits/Alhambra-II/01-Manual-testing.ice | 16065 +++++++-------- .../14-bits/Alhambra-II/01-Manual-testing.ice | 15316 +++++++-------- .../15-bits/Alhambra-II/01-Manual-testing.ice | 16077 +++++++--------- 8 files changed, 51700 insertions(+), 70992 deletions(-) diff --git a/examples/TESTs/Uint/Uint16/08-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/08-bits/Alhambra-II/01-Manual-testing.ice index 5b98f705..d1801876 100644 --- a/examples/TESTs/Uint/Uint16/08-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/08-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-8bit Manual testing", + "info": "## 08-Uint16 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,22 +154,22 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "6b58d2f0-4401-4e26-a06d-4e5182834a8a", + "type": "8230cd0fac1b225bdde50113fbeb53ff973151f4", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "55e4e398-8a04-4001-aa00-225c98c253a3", + "type": "dd433741227830183358f6c99b01c938ca657497", "position": { - "x": 728, + "x": 544, "y": 56 }, "size": { @@ -178,11 +178,11 @@ } }, { - "id": "6b58d2f0-4401-4e26-a06d-4e5182834a8a", - "type": "8230cd0fac1b225bdde50113fbeb53ff973151f4", + "id": "5991c6ed-0866-4e76-b5e1-f899cebf6c44", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 344, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -190,15 +190,15 @@ } }, { - "id": "5c2e8714-3b67-43d0-8ecc-693798af95ce", - "type": "feaa0bfbcf68c6f8381fb5b2e5c044e91aef9785", + "id": "6c8e56c6-f170-4ac0-b460-552a04010024", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 544, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "6c8e56c6-f170-4ac0-b460-552a04010024", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "6c8e56c6-f170-4ac0-b460-552a04010024", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "5991c6ed-0866-4e76-b5e1-f899cebf6c44", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "5991c6ed-0866-4e76-b5e1-f899cebf6c44", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "6c8e56c6-f170-4ac0-b460-552a04010024", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "6c8e56c6-f170-4ac0-b460-552a04010024", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "5c2e8714-3b67-43d0-8ecc-693798af95ce", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "55e4e398-8a04-4001-aa00-225c98c253a3", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "6474a1e5-40f8-48ce-9d43-9c70da6c6c5d" }, "target": { - "block": "5c2e8714-3b67-43d0-8ecc-693798af95ce", - "port": "d12ce7ad-e7a4-483c-95c3-99485cbf1e49" + "block": "55e4e398-8a04-4001-aa00-225c98c253a3", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 8 } @@ -291,207 +291,692 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 744, - "y": 136 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", - "data": { - "name": "Press" + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 1024, - "y": 168 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" }, - "position": { - "x": 304, - "y": 200 - } - }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "8230cd0fac1b225bdde50113fbeb53ff973151f4": { + "package": { + "name": "Copy-8-verilog", + "version": "0.2", + "description": "Copy-8: Copy the input wire twice and generate a 8 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "6474a1e5-40f8-48ce-9d43-9c70da6c6c5d", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=8;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" + }, + "target": { + "block": "6474a1e5-40f8-48ce-9d43-9c70da6c6c5d", + "port": "in" + }, + "size": 8 + } + ] + } + } + }, + "dd433741227830183358f6c99b01c938ca657497": { + "package": { + "name": "08-Uint16", + "version": "0.4", + "description": "08-Uint16: 8 bits unsigned integer extension to 16 bits. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { - "info": "Tic: button pressed", - "readonly": true + "name": "", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 1024, - "y": 152 - }, - "size": { - "width": 184, - "height": 40 + "x": 952, + "y": 368 } }, { - "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", - "type": "basic.info", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { - "info": "Rising edge detector", - "readonly": true + "name": "", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 872, - "y": 248 - }, - "size": { - "width": 184, - "height": 40 + "x": 336, + "y": 368 } }, { - "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", - "type": "basic.info", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "type": "basic.code", "data": { - "info": "Pull up on/off", - "readonly": true + "ports": { + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- Number of input bits\nlocalparam X = 8;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 448, - "y": 16 + "x": 504, + "y": 272 }, "size": { - "width": 152, - "height": 40 + "width": 384, + "height": 248 } - }, + } + ], + "wires": [ + { + "source": { + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" + }, + "target": { + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" + }, + "target": { + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" + }, + "size": 8 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 + } + }, + { + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 744, + "y": 136 + } + }, + { + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" + }, + "position": { + "x": 1032, + "y": 184 + } + }, + { + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 304, + "y": 200 + } + }, + { + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false + }, + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false + }, + "position": { + "x": 560, + "y": 56 + } + }, + { + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true + }, + "position": { + "x": 720, + "y": -32 + }, + "size": { + "width": 176, + "height": 40 + } + }, + { + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true + }, + "position": { + "x": 1024, + "y": 152 + }, + "size": { + "width": 184, + "height": 40 + } + }, + { + "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", + "type": "basic.info", + "data": { + "info": "Rising edge detector", + "readonly": true + }, + "position": { + "x": 872, + "y": 248 + }, + "size": { + "width": 184, + "height": 40 + } + }, + { + "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", + "type": "basic.info", + "data": { + "info": "Pull up on/off", + "readonly": true + }, + "position": { + "x": 448, + "y": 16 + }, + "size": { + "width": 152, + "height": 40 + } + }, { "id": "5a5caef3-ffd0-46a4-9f63-e55aa8cd750d", "type": "basic.info", @@ -509,8 +994,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +1006,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +1036,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +1052,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +1062,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +1078,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1103,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1113,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1121,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1144,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -794,24 +1290,12 @@ "height": 88 } }, - { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 320, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, { "id": "70cfa680-3def-482c-b194-054c1f522357", "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { "x": 552, - "y": 264 + "y": 280 }, "size": { "width": 96, @@ -829,16 +1313,28 @@ "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", + "position": { + "x": 320, + "y": 264 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1344,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,226 +1392,6 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { - "package": { - "name": "DFF", - "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 208, - "y": 160 - } - }, - { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 816, - "y": 224 - } - }, - { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 208, - "y": 304 - } - }, - { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { "name": "NOT", @@ -1346,44 +1622,283 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "name": "" + }, + "position": { + "x": 816, + "y": 232 + } + }, + { + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, "position": { "x": 280, @@ -1412,8 +1927,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1939,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1976,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +2032,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +2048,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +2057,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +2069,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +2081,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2111,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2121,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2131,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2153,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2181,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,682 +2366,493 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -376, - "y": -656 - } - }, - { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -224, - "y": -656 - } - }, - { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 952, - "y": -600 - } - }, - { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, - "position": { - "x": 816, - "y": -600 + "x": 824, + "y": 304 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", "clock": false }, "position": { - "x": -376, - "y": -584 + "x": 376, + "y": 320 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "not", + "value": "0", + "local": false }, "position": { - "x": -224, - "y": -584 + "x": 520, + "y": 160 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 552, - "y": -440 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": 840, - "y": -352 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": 536, - "y": -352 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": -288 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 120, - "y": -232 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 120, - "y": -160 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", - "position": { - "x": 704, - "y": -368 + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "info": "Edge detector", - "readonly": true + "name": "" }, "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 + "x": 960, + "y": 248 } }, { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": 376, - "y": -120 - }, - "size": { - "width": 288, - "height": 56 + "x": 728, + "y": 128 } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } }, "position": { - "x": 720, - "y": -456 + "x": 672, + "y": 248 }, "size": { - "width": 304, - "height": 72 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", - "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true - }, - "position": { - "x": 432, - "y": -640 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 360, - "height": 120 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", - "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true - }, - "position": { - "x": -8, - "y": -648 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 312, - "height": 128 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 48 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "Counter", - "readonly": true + "name": "" }, "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 + "x": 560, + "y": 72 } }, { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", + "data": { + "name": "" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 120, + "y": 104 } }, { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", + "data": { + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } + }, "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" - } - }, - { - "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" - } - }, - { - "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "block": "97b51945-d716-4b6c-9db9-970d08541249", "port": "out" }, "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" - } - }, - { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" - } - }, - { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, - { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } - }, - { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" - }, - "vertices": [] - }, - { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" - } } ] } } }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": 104 + "x": -376, + "y": -656 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 216, - "y": 192 + "x": -224, + "y": -656 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 728, - "y": 192 + "x": 952, + "y": -600 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "out" }, "position": { - "x": 240, - "y": 320 + "x": 816, + "y": -600 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "clock": false }, "position": { - "x": 472, - "y": 56 + "x": -376, + "y": -584 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "blockColor": "fuchsia", + "name": "in" }, "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 272, - "height": 104 + "x": -224, + "y": -584 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", - "type": "basic.info", + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", "data": { - "info": "Initial value", - "readonly": true + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 480, - "y": 48 - }, - "size": { - "width": 136, - "height": 32 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "x": 552, + "y": -440 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 840, + "y": -352 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" - } - } - ] - } - } - }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { - "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": -120 + "x": 536, + "y": -352 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { "blockColor": "yellow", "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "oldBlockColor": "fuchsia" }, "position": { - "x": 368, - "y": -120 + "x": 384, + "y": -288 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2534,194 +2860,153 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 384, - "y": -32 + "x": 112, + "y": -248 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "type": "basic.outputLabel", "data": { - "name": "q", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1040, - "y": -32 + "x": 112, + "y": -176 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Edge detector", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "name": "max" + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 368, + "y": -88 + }, + "size": { + "width": 288, + "height": 56 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", + "readonly": true }, "position": { - "x": 1048, - "y": 56 + "x": 720, + "y": -456 + }, + "size": { + "width": 304, + "height": 72 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "Stable output", + "readonly": true }, "position": { - "x": 856, - "y": 144 + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true + }, + "position": { + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", "position": { - "x": 544, - "y": 40 + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 }, "size": { "width": 96, @@ -2729,11 +3014,11 @@ } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", "position": { - "x": 720, - "y": 160 + "x": 520, + "y": -192 }, "size": { "width": 96, @@ -2744,695 +3029,552 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", "port": "inlabel" - }, - "vertices": [] + } }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" }, "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } + }, + { + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" + }, + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" + } + }, + { + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "port": "outlabel" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "port": "in" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", "port": "inlabel" - }, - "size": 16 + } }, { "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", "port": "outlabel" }, "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } }, { "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" }, "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" }, - "vertices": [], - "size": 16 + "vertices": [] }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" - }, - "vertices": [ - { - "x": 840, - "y": 264 - } - ], - "size": 16 + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + } } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -136, - "y": -448 - } - }, - { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": -136, - "y": -376 + "x": 624, + "y": 120 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": -632, - "y": -264 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -480, - "y": -264 - } - }, - { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -216 + "x": 88, + "y": 152 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", "data": { - "name": "rst", + "name": "", "clock": false }, "position": { - "x": -624, - "y": -192 + "x": 88, + "y": 280 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "" }, "position": { - "x": -480, - "y": -192 + "x": 616, + "y": 352 } }, { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": -112, - "y": -144 - } - }, - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": -40 }, - "position": { - "x": -112, - "y": -8 + "size": { + "width": 648, + "height": 96 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Input signal", + "readonly": true }, "position": { - "x": -128, - "y": 72 - } - }, - { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "x": 96, + "y": 256 }, - "position": { - "x": 568, - "y": 104 + "size": { + "width": 136, + "height": 40 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "info": "System clock", + "readonly": true }, "position": { - "x": -576, - "y": 136 - } - }, - { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": 120 }, - "position": { - "x": -128, - "y": 248 + "size": { + "width": 96, + "height": 48 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, + "x": 160, "y": 352 }, "size": { - "width": 96, - "height": 96 + "width": 168, + "height": 48 } }, { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, "position": { - "x": 40, - "y": 104 + "x": 328, + "y": 200 }, "size": { - "width": 96, - "height": 96 + "width": 248, + "height": 48 } }, { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true + }, "position": { - "x": -400, - "y": 104 + "x": 504, + "y": 264 }, "size": { - "width": 96, - "height": 128 + "width": 400, + "height": 72 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": 72 + "x": 480, + "y": 352 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 48, - "y": -152 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 64, - "y": -360 + "x": 320, + "y": 264 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "block": "2708468d-1088-4570-be63-fb0d4799a941", "port": "out" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "port": "in" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": -8, - "y": 376 + "x": 264, + "y": 368 } ] - }, + } + ] + } + } + }, + "8a23ffd0491010ff595493182b82c722bd6902d7": { + "package": { + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 424 } }, { - "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "port": "outlabel" + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "d", + "clock": false }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 536 } }, { - "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "position": { + "x": 824, + "y": 536 } }, { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "type": "basic.input", + "data": { + "name": "load", + "clock": false }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 648 } }, { - "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", - "port": "outlabel" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] - }, - { - "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "port": "out" - }, - "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" - }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -272, - "y": 368 - } - ], - "size": 4 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 488, + "y": 280 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "position": { + "x": 320, + "y": 400 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 - }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" + } }, { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" - }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" - }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { "package": { - "name": "DFF-rst-x04", - "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 }, "design": { "graph": { "blocks": [ - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -160, - "y": -336 - } - }, - { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -168, - "y": -280 - } - }, { "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", @@ -3441,8 +3583,8 @@ "clock": true }, "position": { - "x": -496, - "y": -256 + "x": 216, + "y": -120 } }, { @@ -3461,12 +3603,12 @@ "virtual": true }, "position": { - "x": -344, - "y": -256 + "x": 368, + "y": -120 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -3474,200 +3616,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 112, - "y": -200 + "x": 384, + "y": -32 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "type": "basic.outputLabel", "data": { - "name": "rst", - "clock": false + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -488, - "y": -184 + "x": 1040, + "y": -32 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 112, - "y": -112 - } - }, - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 376, - "y": -8 - } - }, - { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 376, - "y": 80 + "x": 1216, + "y": -32 } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "max" }, "position": { - "x": 1032, - "y": 184 + "x": 1208, + "y": 56 } }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": 528, - "y": 208 + "x": 1048, + "y": 56 } }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" + "clock": false }, "position": { - "x": 520, - "y": 264 + "x": 216, + "y": 56 } }, { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 712, + "y": 88 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 856, + "y": 144 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 272, - "y": -128 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": -16, - "y": -296 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3689,762 +3837,865 @@ }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "port": "inlabel" + }, + "vertices": [] }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "port": "outlabel" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 16 }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "size": 16 }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "port": "out" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } + "vertices": [], + "size": 16 }, { "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": 712, - "y": 128 + "x": 840, + "y": 264 } - ] - }, + ], + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 624, + "y": -168 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 280, + "y": -152 + } + }, + { + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": 624, + "y": -104 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 456, + "y": -256 } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", + "block": "12fb4602-d67f-4129-a777-f04945adf29d", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "size": 4 + "size": 16 }, { "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "size": 16 } ] } } }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "Bus4-Split-all", + "name": "AdderK-16bits", "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its wires", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "3" + "name": "c" }, "position": { - "x": 576, - "y": 80 + "x": 624, + "y": -168 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", "type": "basic.output", "data": { - "name": "2" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 600, - "y": 144 + "x": 624, + "y": -96 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": 128, - "y": 184 + "x": 232, + "y": -56 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "name": "1" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 592, - "y": 240 + "x": 232, + "y": -272 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 568, - "y": 296 + "x": 232, + "y": -168 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": 296, - "y": 176 + "x": 456, + "y": -152 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "84f0a15761ee8b753f67079819a7614923939472": { + "651fa32fcf52b534a766fdb2ba638a010338f268": { "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false - }, - "position": { - "x": 80, - "y": 64 - } - }, - { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false - }, - "position": { - "x": 80, - "y": 136 - } - }, - { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", "type": "basic.output", "data": { "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 712, - "y": 200 - } - }, - { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "type": "basic.input", - "data": { - "name": "1", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 80, - "y": 208 + "x": 960, + "y": 248 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "name": "0", - "clock": false + "name": "", + "value": "0", + "local": false }, "position": { - "x": 80, - "y": 272 + "x": 728, + "y": 128 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], "ports": { - "in": [ - { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" - } - ], + "in": [], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "k", + "range": "[15:0]", + "size": 16 } ] } }, "position": { - "x": 296, - "y": 176 + "x": 672, + "y": 248 }, "size": { - "width": 344, - "height": 104 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[7:0]", "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 8, + "y": -664 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 856, - "y": -56 + "x": 960, + "y": -608 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 200, - "y": -56 + "x": -320, + "y": -608 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": 80 + "x": 8, + "y": -592 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 536, - "y": -40 - }, - "size": { - "width": 96, - "height": 64 + "x": 8, + "y": -472 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", "data": { - "info": "Data input", - "readonly": true + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 216, - "y": 56 - }, - "size": { - "width": 104, - "height": 40 + "x": 184, + "y": -472 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", "data": { - "info": "System clock", - "readonly": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 208, - "y": -304 + "x": -320, + "y": -424 + } + }, + { + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 144, - "height": 40 + "position": { + "x": 8, + "y": -408 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 720, - "y": -200 + "x": 184, + "y": -408 + } + }, + { + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -424 }, "size": { - "width": 152, + "width": 96, "height": 64 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 712, - "y": -56 + "x": -168, + "y": -608 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, @@ -4455,173 +4706,235 @@ "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "port": "outlabel" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "port": "out" + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { - "package": { - "name": "Bus16-Split-quarter", - "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 }, - "position": { - "x": 608, - "y": 64 - } + "size": 8 }, { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "type": "basic.output", - "data": { - "name": "2", - "range": "[3:0]", - "size": 4 + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 640, - "y": 208 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 96, - "y": 224 + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" + }, + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "type": "basic.output", + "data": { + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { "x": 608, - "y": 312 + "y": 176 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 + }, + "position": { + "x": 96, + "y": 208 + } + }, + { + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "type": "basic.output", "data": { "name": "0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, "position": { - "x": 552, - "y": 400 + "x": 608, + "y": 272 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ @@ -4632,25 +4945,15 @@ } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "o0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ] } @@ -4661,7 +4964,7 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], @@ -4677,2299 +4980,306 @@ }, "size": 16 }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" - }, - "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "port": "in" }, - "size": 4 + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "port": "o0" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-8bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-8bits: Adder of two operands of 8 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "3", + "name": "a1", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 16, + "y": -688 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "type": "basic.outputLabel", "data": { - "name": "2", + "name": "a1", "range": "[3:0]", - "clock": false, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 104, - "y": 184 + "x": 352, + "y": -664 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 720, - "y": 224 + "x": -312, + "y": -632 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 16, + "y": -616 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 104, - "y": 312 - } - }, - { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } - }, - "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 - } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - }, - "size": 4 - }, - { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - }, - "size": 4 - }, - { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 - }, - { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 624, - "y": -168 - } - }, - { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": 280, - "y": -152 - } - }, - { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 - }, - "position": { - "x": 624, - "y": -104 - } - }, - { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", - "data": { - "name": "", - "value": "1", - "local": true - }, - "position": { - "x": 456, - "y": -256 - } - }, - { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", - "position": { - "x": 456, - "y": -152 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" - }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" - } - }, - { - "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" - }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" - }, - "size": 16 - }, - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" - }, - "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 624, - "y": -168 - } - }, - { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 - }, - "position": { - "x": 624, - "y": -96 - } - }, - { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": 232, - "y": -56 - } - }, - { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 232, - "y": -272 - } - }, - { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", - "position": { - "x": 456, - "y": -152 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" - }, - "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - } - }, - { - "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" - }, - "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" - }, - "size": 16 - }, - { - "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" - }, - "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" - }, - "size": 16 - }, - { - "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" - }, - "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { - "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 - }, - "position": { - "x": 960, - "y": 248 - } - }, - { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 728, - "y": 128 - } - }, - { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k", - "range": "[15:0]", - "size": 16 - } - ] - } - }, - "position": { - "x": 672, - "y": 248 - }, - "size": { - "width": 208, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" - }, - "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" - } - }, - { - "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" - }, - "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { - "package": { - "name": "Adder-16bits", - "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -664 - } - }, - { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "type": "basic.outputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 - }, - "position": { - "x": 352, - "y": -664 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 960, - "y": -608 - } - }, - { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": -320, - "y": -608 - } - }, - { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "type": "basic.inputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -592 - } - }, - { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 - }, - "position": { - "x": 352, - "y": -584 - } - }, - { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 - }, - "position": { - "x": 960, - "y": -544 - } - }, - { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -472 - } - }, - { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 - }, - "position": { - "x": 184, - "y": -472 - } - }, - { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": -320, - "y": -424 - } - }, - { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -408 - } - }, - { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 - }, - "position": { - "x": 184, - "y": -408 - } - }, - { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -608 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", - "position": { - "x": 352, - "y": -456 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", - "position": { - "x": 520, - "y": -600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", - "position": { - "x": 760, - "y": -544 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", - "port": "outlabel" - }, - "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" - }, - "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "port": "outlabel" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } - }, - { - "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" - }, - "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 - }, - { - "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" - }, - "size": 8 - } - ] - } - } - }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { - "package": { - "name": "Bus16-Split-half", - "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", - "data": { - "name": "1", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 608, - "y": 176 - } - }, - { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": 96, - "y": 208 - } - }, - { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "type": "basic.output", - "data": { - "name": "0", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 608, - "y": 272 - } - }, - { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] - } - }, - "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "port": "in" - }, - "size": 8 - } - ] - } - } - }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { - "package": { - "name": "Adder-8bits", - "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 16, - "y": -688 - } - }, - { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "type": "basic.outputLabel", - "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 - }, - "position": { - "x": 352, - "y": -664 - } - }, - { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -312, - "y": -632 - } - }, - { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "type": "basic.inputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 16, - "y": -616 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 960, - "y": -608 - } - }, - { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 352, - "y": -584 - } - }, - { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "type": "basic.output", - "data": { - "name": "s", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 960, - "y": -544 - } - }, - { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 - }, - "position": { - "x": 184, - "y": -472 - } - }, - { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -440 - } - }, - { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 184, - "y": -408 - } - }, - { - "id": "63477487-9493-4058-a7e1-9bab443ec466", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -320, - "y": -384 - } - }, - { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -368 - } - }, - { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -168, - "y": -384 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -152, - "y": -632 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", - "position": { - "x": 352, - "y": -456 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 760, - "y": -544 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", - "position": { - "x": 520, - "y": -600 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", - "port": "outlabel" - }, - "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "port": "outlabel" - }, - "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "port": "outlabel" - }, - "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "port": "outlabel" - }, - "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" - }, - "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" - }, - "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" - }, - "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 - }, - { - "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" - }, - "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } - } - ] - } - } - }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { - "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 584, - "y": 104 - } - }, - { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 120, - "y": 208 - } - }, - { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", - "data": { - "name": "0", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 584, - "y": 232 - } - }, - { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 - } - ] - } - }, - "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 - } - ] - } - } - }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { - "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -744 - } - }, - { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" - }, - "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 920, - "y": -696 - } - }, - { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -688 - } - }, - { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 576, - "y": -672 - } - }, - { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -632 - } - }, - { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -312, - "y": -632 - } - }, - { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" - }, - "position": { - "x": 456, - "y": -584 - } - }, - { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "c" }, "position": { - "x": 8, - "y": -576 + "x": 960, + "y": -608 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", "type": "basic.outputLabel", "data": { + "name": "b1", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 456, - "y": -528 + "x": 352, + "y": -584 } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": -8, - "y": -448 + "x": 960, + "y": -544 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", "type": "basic.outputLabel", "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 328, - "y": -440 + "x": 184, + "y": -472 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "b2", + "name": "b1", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -8, - "y": -384 - } - }, - { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "fuchsia" }, "position": { - "x": -312, - "y": -384 + "x": 8, + "y": -440 } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "b1" - }, - "position": { - "x": 328, - "y": -376 - } - }, - { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", + "name": "b0", "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1064, - "y": -368 - } - }, - { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "size": 4 }, "position": { - "x": -16, - "y": -320 + "x": 184, + "y": -408 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "63477487-9493-4058-a7e1-9bab443ec466", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 184, - "y": -296 + "x": -320, + "y": -384 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", "name": "b0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -32, - "y": -264 - } - }, - { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia" }, "position": { - "x": 184, - "y": -232 + "x": 8, + "y": -368 } }, { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 320, - "y": -248 + "x": -168, + "y": -384 }, "size": { "width": 96, @@ -6977,71 +5287,47 @@ } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": -168, - "y": -416 + "x": -152, + "y": -632 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", "position": { - "x": -152, - "y": -664 + "x": 352, + "y": -456 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 896, - "y": -400 + "x": 760, + "y": -544 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 744, - "y": -688 + "x": 520, + "y": -600 }, "size": { "width": 96, @@ -7052,278 +5338,158 @@ "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", "port": "inlabel" - } - }, - { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" - }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", "port": "inlabel" - } - }, - { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" - } + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", "port": "inlabel" - } - }, - { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "size": 4 }, { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", "port": "outlabel" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 4 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", "port": "outlabel" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 4 }, { "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - } + "size": 4 }, { "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } + "size": 4 }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "63477487-9493-4058-a7e1-9bab443ec466", + "port": "out" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] + "size": 8 }, { "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", "port": "out" }, "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "size": 4 + "size": 8 }, { "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, "size": 4 }, { "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, "size": 4 }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "port": "in" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "size": 8 }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -7333,167 +5499,150 @@ }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } } ] } } }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "Adder-1bit", + "name": "Bus8-Split-half", "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "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": { "graph": { "blocks": [ { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 280, - "y": -224 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "c" + "name": "1", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 616, - "y": -176 + "x": 584, + "y": 104 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 280, - "y": -152 + "x": 120, + "y": 208 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "type": "basic.output", "data": { - "name": "s" + "name": "0", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 616, - "y": -96 + "x": 584, + "y": 232 } }, { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 456, - "y": -168 + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 + } + ] + } }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 304, - "y": -64 + "x": 272, + "y": 176 }, "size": { - "width": 96, - "height": 64 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] - }, - { - "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", + "port": "in" }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } + "size": 4 }, { "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" - } + }, + "size": 4 }, { "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 8 } ] } } }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "AdderC-1bit", + "name": "Adder-4bits", "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", + "description": "Adder-4bits: Adder of two operands of 4 bits", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -7502,35 +5651,56 @@ "graph": { "blocks": [ { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -744 + } + }, + { + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "a" + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 504, - "y": -208 + "x": 576, + "y": -736 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "a", - "clock": false + "name": "c" }, "position": { - "x": 136, - "y": -192 + "x": 920, + "y": -696 } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "a", + "blockColor": "deeppink", + "name": "a2", "pins": [ { "index": "0", @@ -7538,54 +5708,33 @@ "value": "NULL" } ], - "virtual": true - }, - "position": { - "x": 272, - "y": -192 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": 1112, - "y": -176 + "x": 8, + "y": -688 } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 504, - "y": -144 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "name": "b3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 136, - "y": -120 + "x": 576, + "y": -672 } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "b", + "blockColor": "deeppink", + "name": "a1", "pins": [ { "index": "0", @@ -7593,44 +5742,47 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": 272, - "y": -120 + "x": 8, + "y": -632 } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "type": "basic.outputLabel", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 648, - "y": -96 + "x": -312, + "y": -632 } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", - "type": "basic.input", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "name": "ci", - "clock": false + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 136, - "y": -40 + "x": 456, + "y": -584 } }, { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "blockColor": "navy", - "name": "ci", + "blockColor": "deeppink", + "name": "a0", "pins": [ { "index": "0", @@ -7642,691 +5794,570 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 272, - "y": -40 + "x": 8, + "y": -576 } }, { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 480, - "y": 24 - } - }, - { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" + "name": "b2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 992, - "y": 56 + "x": 456, + "y": -528 } }, { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b" + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 480, - "y": 88 + "x": -8, + "y": -448 } }, { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "ci", + "blockColor": "deeppink", + "name": "a1", "oldBlockColor": "fuchsia" }, "position": { - "x": 648, - "y": 120 - } - }, - { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 832, - "y": 56 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 808, - "y": -80 - }, - "size": { - "width": 96, - "height": 64 + "x": 328, + "y": -440 } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 632, - "y": -192 + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 960, - "y": -176 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" - } - }, - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", - "port": "inlabel" - } - }, - { - "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", - "port": "out" - }, - "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "port": "inlabel" - } - }, - { - "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", - "port": "outlabel" - }, - "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", - "port": "outlabel" - }, - "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "x": -8, + "y": -384 } }, { - "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": -312, + "y": -384 } }, { - "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "port": "outlabel" + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 328, + "y": -376 } }, { - "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 }, - "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 1064, + "y": -368 } }, { - "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": -16, + "y": -320 } }, { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 184, + "y": -296 } }, { - "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "position": { + "x": -32, + "y": -264 } }, { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": 184, + "y": -232 } }, { - "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "size": { + "width": 96, + "height": 64 } }, { - "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 464, + "y": -392 }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "size": { + "width": 96, + "height": 96 } }, { - "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 608, + "y": -544 }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "size": { + "width": 96, + "height": 96 } - } - ] - } - } - }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { - "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 120, - "y": 48 + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" - }, + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 560, - "y": 72 + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" - }, + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 120, - "y": 104 + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } - }, + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 256, - "y": 48 + "x": 744, + "y": -688 }, "size": { - "width": 272, - "height": 112 + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" + }, + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" } }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" } }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, - "position": { - "x": 112, - "y": 40 + "target": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 608, - "y": 72 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "position": { - "x": 112, - "y": 96 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 256, - "y": 48 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "size": { - "width": 312, - "height": 104 + "target": { + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } - } - ], - "wires": [ + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { - "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 456, - "y": 120 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", - "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 168, - "y": 112 + "target": { + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "size": { - "width": 248, - "height": 80 - } - } - ], - "wires": [ + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, { "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "position": { - "x": 128, - "y": 168 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 640, - "y": 200 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 128, - "y": 224 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - } + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 296, - "y": 176 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + } + }, + { + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 272, - "height": 104 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - } - ], - "wires": [ + }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "port": "in" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" }, - "size": 8 + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, "size": 4 }, { "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" + }, + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" }, "size": 4 + }, + { + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } } ] } } }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { "package": { - "name": "AdderC-4bits", + "name": "Adder-1bit", "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "description": "Adder-1bit: Adder of two operands of 1 bit", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -8335,206 +6366,179 @@ "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -744 - } - }, - { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" - }, - "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 920, - "y": -696 - } - }, - { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -688 - } - }, - { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "", + "clock": false }, "position": { - "x": 576, - "y": -672 + "x": 280, + "y": -224 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, "position": { - "x": 8, - "y": -632 + "x": 616, + "y": -176 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 280, + "y": -152 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "s" }, "position": { - "x": 456, - "y": -584 + "x": 616, + "y": -96 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 456, + "y": -168 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 8, - "y": -576 + "x": 304, + "y": -64 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 456, - "y": -528 + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [ + { + "x": 400, + "y": -168 + } + ] + }, + { + "source": { + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } + } + ] + } + } + }, + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { + "package": { + "name": "AdderC-1bit", + "version": "0.1", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "a" }, "position": { - "x": -8, - "y": -448 + "x": 504, + "y": -208 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "name": "a", + "clock": false }, "position": { - "x": 328, - "y": -440 + "x": 136, + "y": -192 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b2", + "name": "a", "pins": [ { "index": "0", @@ -8542,59 +6546,54 @@ "value": "NULL" } ], - "virtual": true, - "oldBlockColor": "fuchsia" + "virtual": true }, "position": { - "x": -8, - "y": -384 + "x": 272, + "y": -192 } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "c" }, "position": { - "x": -312, - "y": -384 + "x": 1112, + "y": -176 } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b1" + "name": "b" }, "position": { - "x": 328, - "y": -376 + "x": 504, + "y": -144 } }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "type": "basic.input", "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "name": "b", + "clock": false }, "position": { - "x": 1064, - "y": -368 + "x": 136, + "y": -120 } }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b1", + "name": "b", "pins": [ { "index": "0", @@ -8605,29 +6604,41 @@ "virtual": true }, "position": { - "x": -16, - "y": -320 + "x": 272, + "y": -120 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a0", + "blockColor": "navy", + "name": "ci", "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -296 + "x": 648, + "y": -96 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", + "name": "ci", + "clock": false + }, + "position": { + "x": 136, + "y": -40 + } + }, + { + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "ci", "pins": [ { "index": "0", @@ -8639,1930 +6650,1940 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": -32, - "y": -264 + "x": 272, + "y": -40 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "name": "a" }, "position": { - "x": 184, - "y": -232 + "x": 480, + "y": 24 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "name": "ci", - "clock": false + "name": "s" }, "position": { - "x": -296, - "y": -168 + "x": 992, + "y": 56 } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "id": "edf4525b-edd8-40fa-b784-631b102fb907", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b" }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 480, + "y": 88 } }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 648, + "y": 120 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -168, - "y": -416 + "x": 648, + "y": 40 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -664 + "x": 832, + "y": 56 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 896, - "y": -400 + "x": 808, + "y": -80 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 744, - "y": -688 + "x": 632, + "y": -192 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 320, - "y": -248 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "port": "inlabel" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" } }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", "port": "outlabel" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" - }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] - }, - { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", "port": "outlabel" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" } }, { "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + } + ] + } + } + }, + "873425949b2a80f1a7f66f320796bcd068a59889": { + "package": { + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", + "data": { + "name": "" }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] + "position": { + "x": 112, + "y": 40 + } }, { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 608, + "y": 72 + } + }, + { + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", + "data": { + "name": "" }, - "size": 4 + "position": { + "x": 112, + "y": 96 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", + "data": { + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 256, + "y": 48 }, - "size": 4 - }, + "size": { + "width": 312, + "height": 104 + } + } + ], + "wires": [ { "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, + } + ] + } + } + }, + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { + "package": { + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": 456, + "y": 120 } }, + { + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", + "data": { + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 168, + "y": 112 + }, + "size": { + "width": 248, + "height": 80 + } + } + ], + "wires": [ { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } } ] } } }, - "c3c498191b14e9288a85fa2871b3966665f75475": { + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { "package": { - "name": "AdderC-8bits", + "name": "Bus4-Split-all", "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "description": "Bus4-Split-all: Split the 4-bits bus into its wires", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "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": { "graph": { "blocks": [ { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", + "data": { + "name": "3" }, "position": { - "x": -64, - "y": -648 + "x": 576, + "y": 80 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "type": "basic.input", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "2" }, "position": { - "x": -408, - "y": -584 + "x": 600, + "y": 144 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "type": "basic.inputLabel", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "type": "basic.input", "data": { - "name": "a0", + "name": "", "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "clock": false, + "size": 4 }, "position": { - "x": -64, - "y": -568 + "x": 128, + "y": 184 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", "type": "basic.output", "data": { - "name": "c" + "name": "1" }, "position": { - "x": 832, - "y": -480 + "x": 592, + "y": 240 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "type": "basic.outputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "name": "0" }, "position": { - "x": 248, - "y": -456 + "x": 568, + "y": 296 } }, { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": -80, - "y": -448 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 + } + } + ], + "wires": [ + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" + }, + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": -400, - "y": -392 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": -80, - "y": -376 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": 248, - "y": -376 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "type": "basic.output", - "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "type": "basic.input", + "data": { + "name": "3", + "clock": false }, "position": { - "x": 840, - "y": -336 + "x": 80, + "y": 64 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "name": "2", + "clock": false }, "position": { - "x": 120, - "y": -304 + "x": 80, + "y": 136 } }, { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "type": "basic.outputLabel", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "type": "basic.output", "data": { - "name": "b0", + "name": "", "range": "[3:0]", - "blockColor": "fuchsia", "size": 4 }, "position": { - "x": 120, - "y": -232 + "x": 712, + "y": 200 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", "type": "basic.input", "data": { - "name": "ci", + "name": "1", "clock": false }, "position": { - "x": -392, - "y": -168 - } - }, - { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -248, - "y": -392 - }, - "size": { - "width": 96, - "height": 64 + "x": 80, + "y": 208 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -240, - "y": -584 + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 688, - "y": -336 - }, - "size": { - "width": 96, - "height": 64 + "x": 80, + "y": 272 } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", - "position": { - "x": 320, - "y": -248 + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 464, - "y": -392 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 344, + "height": 104 } } ], "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "port": "inlabel" - }, - "size": 4 + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" + } }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "port": "outlabel" + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + } }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" }, "vertices": [ { - "x": 272, - "y": -256 + "x": 200, + "y": 176 } - ], - "size": 4 + ] }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", - "port": "outlabel" + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" }, - "size": 4 + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], "size": 4 - }, + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "position": { + "x": 128, + "y": 168 } }, { - "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "position": { + "x": 640, + "y": 200 } }, { - "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" - }, - "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": 8 + "position": { + "x": 128, + "y": 224 + } }, { - "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } }, - "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "position": { + "x": 296, + "y": 176 }, - "size": 8 - }, + "size": { + "width": 272, + "height": 104 + } + } + ], + "wires": [ { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", "port": "in" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, "size": 4 }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" }, "size": 4 - }, - { - "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - }, - "vertices": [ - { - "x": 624, - "y": -392 - } - ] } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { "package": { - "name": "Bus16-Join-half", + "name": "AdderC-4bits", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -744 + } + }, + { + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" + }, + "position": { + "x": 576, + "y": -736 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 920, + "y": -696 + } + }, + { + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -688 + } + }, + { + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -632 + } + }, + { + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", "type": "basic.input", "data": { - "name": "1", - "range": "[7:0]", + "name": "", + "range": "[3:0]", "clock": false, - "size": 8 + "size": 4 + }, + "position": { + "x": -312, + "y": -632 + } + }, + { + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 120, - "y": 168 + "x": 456, + "y": -584 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 632, - "y": 200 + "x": 8, + "y": -576 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "type": "basic.input", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": 264 + "x": 456, + "y": -528 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": -8, + "y": -448 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, - "size": 8 + "position": { + "x": 328, + "y": -440 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": -8, + "y": -384 + } + }, { - "id": "2708468d-1088-4570-be63-fb0d4799a941", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", "type": "basic.input", "data": { "name": "", - "clock": true + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 88, - "y": 152 + "x": -312, + "y": -384 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "fuchsia", + "name": "b1" }, "position": { - "x": 88, - "y": 280 + "x": 328, + "y": -376 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "type": "basic.output", "data": { - "name": "" + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 616, - "y": 352 + "x": 1064, + "y": -368 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 104, - "y": -40 + "x": -16, + "y": -320 + } + }, + { + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 648, - "height": 96 + "position": { + "x": 184, + "y": -296 + } + }, + { + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -32, + "y": -264 + } + }, + { + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "info": "Input signal", - "readonly": true + "name": "ci", + "clock": false }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": -296, + "y": -168 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 104, - "y": 120 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 48 + "height": 96 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", - "data": { - "info": "Current signal \nstate", - "readonly": true - }, + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 160, - "y": 352 + "x": 608, + "y": -544 }, "size": { - "width": 168, - "height": 48 + "width": 96, + "height": 96 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", - "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 328, - "y": 200 + "x": -168, + "y": -416 }, "size": { - "width": 248, - "height": 48 + "width": 96, + "height": 128 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", - "type": "basic.info", - "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", - "readonly": true - }, + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 504, - "y": 264 + "x": -152, + "y": -664 }, "size": { - "width": 400, - "height": 72 + "width": 96, + "height": 128 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 480, - "y": 352 + "x": 896, + "y": -400 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", - "type": "basic.info", - "data": { - "info": "In any other case the output is 0", - "readonly": true - }, + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 520, - "y": 432 + "x": 744, + "y": -688 }, "size": { - "width": 296, - "height": 40 + "width": 96, + "height": 96 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { "x": 320, - "y": 264 + "y": -248 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" } }, { "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" } }, { "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [ - { - "x": 264, - "y": 368 - } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -256, - "y": -56 - } - }, - { - "id": "e226f910-14af-473d-956b-03559f466726", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -104, - "y": -56 - } - }, - { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 128, - "y": 32 - } - }, - { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": -56, - "y": 72 - } - }, - { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 424, - "y": 128 + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": -64, - "y": 160 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 104, - "y": 144 + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 280, - "y": 128 + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } - } - ], - "wires": [ + }, { "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "e226f910-14af-473d-956b-03559f466726", + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", "port": "inlabel" } }, { "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", + "block": "3c8597e6-ca79-494a-9a53-04c284205216", "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "port": "out" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" - } - } - ] - } - } - }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { - "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "position": { - "x": 824, - "y": 304 - } + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, - "position": { - "x": 376, - "y": 320 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", - "data": { - "name": "not", - "value": "0", - "local": false + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "position": { - "x": 520, - "y": 160 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", - "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true - }, - "position": { - "x": 632, - "y": 392 + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 336, - "height": 96 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", - "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true - }, - "position": { - "x": 728, - "y": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": { - "width": 296, - "height": 144 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", - "position": { - "x": 520, - "y": 256 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - } - ], - "wires": [ + }, { "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" }, - "vertices": [] + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "port": "in" - } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", - "data": { - "name": "" }, - "position": { - "x": 960, - "y": 248 - } + "size": 4 }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 728, - "y": 128 - } + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } - }, - "position": { - "x": 672, - "y": 248 + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 208, - "height": 64 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - } - ], - "wires": [ + }, { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", + "data": { + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" + }, + "position": { + "x": -64, + "y": -648 + } + }, + { + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", "type": "basic.input", "data": { "name": "", - "clock": true + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 216, - "y": -40 + "x": -408, + "y": -584 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "a0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 368, - "y": -40 + "x": -64, + "y": -568 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "c" }, "position": { - "x": 200, - "y": 128 + "x": 832, + "y": -480 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", - "type": "basic.inputLabel", + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "name": "a1", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 344, - "y": 128 + "x": 248, + "y": -456 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", - "type": "basic.outputLabel", + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": -80, + "y": -448 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", "data": { - "name": "LED", + "name": "", "range": "[7:0]", + "clock": false, "size": 8 }, "position": { - "x": 1136, - "y": 144 + "x": -400, + "y": -392 + } + }, + { + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" + }, + "position": { + "x": -80, + "y": -376 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 600, - "y": 240 + "x": 248, + "y": -376 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", "type": "basic.output", "data": { - "name": "byte" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 1208, - "y": 296 + "x": 840, + "y": -336 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 600, - "y": 312 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false + "name": "a0", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 200, - "y": 320 + "x": 120, + "y": -304 } }, { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", - "type": "basic.inputLabel", + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "type": "basic.outputLabel", "data": { + "name": "b0", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 344, - "y": 320 + "x": 120, + "y": -232 } }, { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "name": "b0" + "name": "ci", + "clock": false }, "position": { - "x": 1216, - "y": 376 + "x": -392, + "y": -168 } }, { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 1064, - "y": 376 + "x": -248, + "y": -392 }, "size": { "width": 96, @@ -10570,27 +8591,23 @@ } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", - "type": "basic.info", - "data": { - "info": "Byte 0 \n(least significant) ", - "readonly": true - }, + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 1344, - "y": 376 + "x": -240, + "y": -584 }, "size": { - "width": 184, - "height": 56 + "width": 96, + "height": 64 } }, { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 744, - "y": 296 + "x": 688, + "y": -336 }, "size": { "width": 96, @@ -10598,11 +8615,11 @@ } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 952, - "y": 128 + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -10610,592 +8627,437 @@ } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 720, - "y": 128 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "port": "inlabel" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", "port": "inlabel" - } + }, + "size": 4 }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" - } + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", - "port": "inlabel" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": 16 + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 }, { "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", "port": "outlabel" }, "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "size": 16 + "size": 4 }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": 8 + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" + }, + "target": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, "size": 8 }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" }, "size": 8 }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] } ] } } }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", "type": "basic.input", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 232, - "y": -112 + "x": 120, + "y": 168 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", "data": { "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 - } - }, - { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" + "range": "[15:0]", + "size": 16 }, "position": { - "x": 880, - "y": 16 + "x": 632, + "y": 200 } }, { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "type": "basic.input", "data": { - "name": "toggle", - "blockColor": "fuchsia" + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 464, - "y": 32 + "x": 120, + "y": 264 } }, { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "i0", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" - } - }, - { - "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" - }, - "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "port": "inlabel" - } - }, - { - "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" - } - }, - { - "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" - } - }, - { - "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" + "x": 296, + "y": 176 }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "port": "in" }, - "vertices": [] + "size": 16 }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 8 }, { "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "port": "out" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" + }, + "size": 8 } ] } } }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { "package": { - "name": "1-bit-reg", - "version": "0.1", - "description": "Reg: 1-Bit register", + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 }, "design": { "graph": { "blocks": [ { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", "data": { - "name": "", - "clock": true + "name": "nc" }, "position": { - "x": 80, - "y": 440 + "x": 920, + "y": -24 } }, { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "nc" }, "position": { - "x": 224, - "y": 440 + "x": 920, + "y": 56 } }, { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "clock": true }, "position": { - "x": 640, - "y": 512 + "x": 368, + "y": 64 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", "type": "basic.input", "data": { - "name": "d", + "name": "rst", "clock": false }, "position": { - "x": 80, - "y": 552 - } - }, - { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 + "x": 376, + "y": 200 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", "type": "basic.output", "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 1152, - "y": 592 - } - }, - { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" + "name": "", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 232, - "y": 632 + "x": 920, + "y": 200 } }, { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", "type": "basic.input", "data": { - "name": "load", - "clock": false - }, - "position": { - "x": 80, - "y": 632 - } - }, - { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "type": "basic.outputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "fuchsia" + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 456, - "y": 688 + "x": 376, + "y": 336 } }, { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", "type": "basic.constant", "data": { "name": "", @@ -11203,526 +9065,406 @@ "local": false }, "position": { - "x": 784, - "y": 504 - } - }, - { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, - "position": { - "x": 640, - "y": 712 - }, - "size": { - "width": 104, - "height": 40 + "x": 656, + "y": -80 } }, { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, - "position": { - "x": 776, - "y": 680 - }, - "size": { - "width": 120, - "height": 48 - } - }, - { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", - "position": { - "x": 616, - "y": 600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 784, - "y": 600 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" - }, - "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "vertices": [] - }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" + "position": { + "x": 528, + "y": 32 }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 344, + "height": 400 } - }, + } + ], + "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" }, "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", - "port": "inlabel" - } - }, - { - "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "port": "out" + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "port": "in" }, - "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", - "port": "inlabel" - } + "vertices": [], + "size": 16 }, { "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } + "vertices": [] }, { "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" + } }, { "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" }, - "vertices": [] + "size": 16 }, { "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "port": "out" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" } } ] } } }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": 416, - "y": 432 + "x": 384, + "y": -80 } }, { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "a" + "name": "", + "clock": true }, "position": { - "x": 416, - "y": 496 + "x": -136, + "y": -16 } }, { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 + "x": 384, + "y": 56 } }, { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", "type": "basic.input", "data": { - "name": "1", + "name": "", "clock": false }, "position": { - "x": 144, - "y": 504 + "x": -136, + "y": 128 } }, { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", "data": { - "name": "sel", - "clock": false + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 + "x": 32, + "y": -56 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 288 } } ], "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "port": "out" }, "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" } }, { "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", "port": "out" }, "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" } }, { "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" }, "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 216, + "y": -40 } }, { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 368, + "y": -40 + } + }, + { + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", + "data": { + "name": "data", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 200, + "y": 128 } }, { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "type": "basic.inputLabel", + "data": { + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" + "position": { + "x": 344, + "y": 128 } }, { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "name": "a" + "size": 16 }, "position": { - "x": 456, - "y": 360 + "x": 560, + "y": 128 } }, { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", "type": "basic.output", "data": { - "name": "" + "name": "LED", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 1096, - "y": 392 + "x": 1136, + "y": 144 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "type": "basic.outputLabel", "data": { - "name": "1", - "clock": false + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 136, - "y": 416 + "x": 600, + "y": 240 } }, { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "byte" }, "position": { - "x": 272, - "y": 416 + "x": 1208, + "y": 296 } }, { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, + "name": "ticsel", "oldBlockColor": "fuchsia" }, "position": { - "x": 272, - "y": 528 + "x": 600, + "y": 312 } }, { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "0", + "name": "sel", "clock": false }, "position": { - "x": 136, - "y": 528 + "x": 200, + "y": 320 } }, { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b", + "name": "ticsel", "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": 552 + "x": 344, + "y": 320 } }, { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", "data": { - "name": "sel", - "clock": false + "name": "b0" }, "position": { - "x": 376, - "y": 656 + "x": 1216, + "y": 376 } }, { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 952, - "y": 392 + "x": 1064, + "y": 376 }, "size": { "width": 96, @@ -11730,23 +9472,39 @@ } }, { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true + }, "position": { - "x": 600, + "x": 1344, "y": 376 }, + "size": { + "width": 184, + "height": 56 + } + }, + { + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "position": { + "x": 952, + "y": 128 + }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 624, - "y": 656 + "x": 720, + "y": 128 }, "size": { "width": 96, @@ -11754,11 +9512,11 @@ } }, { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", "position": { - "x": 784, - "y": 568 + "x": 744, + "y": 296 }, "size": { "width": 96, @@ -11769,25 +9527,24 @@ "wires": [ { "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "port": "inlabel" }, "vertices": [] }, { "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } }, { "source": { @@ -11795,85 +9552,116 @@ "port": "out" }, "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" } }, { "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "port": "outlabel" }, "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" } }, { "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "port": "inlabel" + }, + "size": 16 + }, + { + "source": { + "block": "514effa0-6d57-4281-b479-22d05798dceb", + "port": "outlabel" + }, + "target": { + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 + }, + "size": 16 + }, + { + "source": { + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + }, + "target": { + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", "port": "in" }, - "vertices": [] + "size": 8 + }, + { + "source": { + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" + } }, { "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" + } }, { "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } } ] } @@ -13218,611 +11006,429 @@ } } }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" + "name": "Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (1-bit channels)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, + "position": { + "x": 456, + "y": 360 + } + }, + { + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", "type": "basic.output", "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "name": "" }, "position": { - "x": 496, - "y": 80 + "x": 1096, + "y": 392 } }, { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - }, + "name": "1", + "clock": false + }, + "position": { + "x": 136, + "y": 416 + } + }, + { + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a", + "pins": [ { - "index": "1", + "index": "0", "name": "NULL", "value": "NULL" - }, + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": 416 + } + }, + { + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b", + "pins": [ { "index": "0", "name": "NULL", "value": "NULL" } ], - "clock": false + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -16, - "y": 80 + "x": 272, + "y": 528 } }, { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "type": "basic.input", "data": { - "info": "Input", - "readonly": true + "name": "0", + "clock": false }, "position": { - "x": 24, - "y": 56 + "x": 136, + "y": 528 + } + }, + { + "id": "8d94a294-a698-43c5-9777-874fd39b8586", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 80, - "height": 40 + "position": { + "x": 616, + "y": 552 } }, { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "info": "Output", - "readonly": true + "name": "sel", + "clock": false }, "position": { - "x": 512, - "y": 48 + "x": 376, + "y": 656 + } + }, + { + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "position": { + "x": 952, + "y": 392 }, "size": { - "width": 80, - "height": 40 + "width": 96, + "height": 64 } }, { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 600, + "y": 376 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 176, - "y": 64 + "x": 624, + "y": 656 }, "size": { - "width": 232, - "height": 96 + "width": 96, + "height": 64 + } + }, + { + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 784, + "y": 568 + }, + "size": { + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "port": "outlabel" }, "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "size": 16 + "vertices": [] }, { "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "port": "out" + "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "port": "outlabel" }, "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "size": 16 - } - ] - } - } - }, - "8230cd0fac1b225bdde50113fbeb53ff973151f4": { - "package": { - "name": "Copy-8-verilog", - "version": "0.2", - "description": "Copy-8: Copy the input wire twice and generate a 8 bits Bus output (Verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "vertices": [] + }, { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 448, - "y": 176 + "target": { + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "port": "inlabel" } }, { - "id": "6474a1e5-40f8-48ce-9d43-9c70da6c6c5d", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "source": { + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "port": "out" }, - "position": { - "x": 992, - "y": 176 + "target": { + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "port": "inlabel" } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i" - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - }, - "params": [], - "code": "//-- Number of bits\nlocalparam N=8;\n\nassign o = {N{i}};\n" + "source": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "position": { - "x": 632, - "y": 144 + "target": { + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "port": "in" }, - "size": { - "width": 288, - "height": 120 - } - } - ], - "wires": [ + "vertices": [] + }, + { + "source": { + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" + }, + "target": { + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + }, { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" - } + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "6474a1e5-40f8-48ce-9d43-9c70da6c6c5d", - "port": "in" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "size": 8 + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] } ] } } }, - "feaa0bfbcf68c6f8381fb5b2e5c044e91aef9785": { + "b7f7136a87c607769a64233fd99bc12818a05746": { "package": { - "name": "UINT16-8bit-verilog", - "version": "0.1", - "description": "UINT32-8bit-verilog: Extend a 8-bit unsigned integer to 32-bits. Verilog implementation ", + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 }, "design": { "graph": { "blocks": [ { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "type": "basic.output", + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", "data": { "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": true }, "position": { - "x": 920, - "y": 304 + "x": 328, + "y": -80 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 } }, { - "id": "d12ce7ad-e7a4-483c-95c3-99485cbf1e49", + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "type": "basic.input", "data": { - "name": "i", - "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" - } - ], + "name": "", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 320, + "y": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[15:0]", - "size": 16 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 8;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 512, - "y": 272 + "x": 496, + "y": -120 }, "size": { - "width": 344, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, - "size": 16 + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" + } }, { "source": { - "block": "d12ce7ad-e7a4-483c-95c3-99485cbf1e49", + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 8 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } diff --git a/examples/TESTs/Uint/Uint16/09-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/09-bits/Alhambra-II/01-Manual-testing.ice index db6f149e..de075b11 100644 --- a/examples/TESTs/Uint/Uint16/09-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/09-bits/Alhambra-II/01-Manual-testing.ice @@ -129,11 +129,11 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-8bit Manual testing", + "info": "## 09-Uint16 Manual testing", "readonly": true }, "position": { - "x": 376, + "x": 384, "y": -64 }, "size": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,22 +154,22 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "ae2e700b-a9b5-4481-9e3e-31c391debb58", + "type": "71feb8be43b821aa497dfd5889eaa1727c8b58a0", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "3572d6bf-79a1-444f-bd7e-524fe8034f47", + "type": "d82ba1caa71e4c663888f316b5ac357e4fbd57a8", "position": { - "x": 728, + "x": 544, "y": 56 }, "size": { @@ -178,11 +178,11 @@ } }, { - "id": "6d4fb706-9b84-4eb6-b65a-7db17abc9c2a", - "type": "0b9f1f5f0769c4e3803ee8c8f0ce30758b824f0b", + "id": "f6e52dd3-fc1b-4543-abf5-f0973500a0dd", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 544, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -190,15 +190,15 @@ } }, { - "id": "ae2e700b-a9b5-4481-9e3e-31c391debb58", - "type": "71feb8be43b821aa497dfd5889eaa1727c8b58a0", + "id": "258759ff-28e4-4c62-b36f-0e2565a2d547", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 344, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "258759ff-28e4-4c62-b36f-0e2565a2d547", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "258759ff-28e4-4c62-b36f-0e2565a2d547", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "f6e52dd3-fc1b-4543-abf5-f0973500a0dd", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "f6e52dd3-fc1b-4543-abf5-f0973500a0dd", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "258759ff-28e4-4c62-b36f-0e2565a2d547", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "258759ff-28e4-4c62-b36f-0e2565a2d547", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "6d4fb706-9b84-4eb6-b65a-7db17abc9c2a", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "3572d6bf-79a1-444f-bd7e-524fe8034f47", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "48e0c4c8-86bd-478b-bc97-2c7939dc0192" }, "target": { - "block": "6d4fb706-9b84-4eb6-b65a-7db17abc9c2a", - "port": "d33d80cb-32b8-43a2-8899-68a02185116d" + "block": "3572d6bf-79a1-444f-bd7e-524fe8034f47", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 9 } @@ -291,207 +291,692 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 744, - "y": 136 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", - "data": { - "name": "Press" + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 1024, - "y": 168 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" }, - "position": { - "x": 304, - "y": 200 - } - }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "71feb8be43b821aa497dfd5889eaa1727c8b58a0": { + "package": { + "name": "Copy-9-verilog", + "version": "0.2", + "description": "Copy-9: Copy the input wire twice and generate a 9 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "48e0c4c8-86bd-478b-bc97-2c7939dc0192", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "range": "[8:0]", + "size": 9 }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[8:0]", + "size": 9 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=9;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" + }, + "target": { + "block": "48e0c4c8-86bd-478b-bc97-2c7939dc0192", + "port": "in" + }, + "size": 9 + } + ] + } + } + }, + "d82ba1caa71e4c663888f316b5ac357e4fbd57a8": { + "package": { + "name": "09-Uint16", + "version": "0.4", + "description": "09-Uint16: 9 bits unsigned integer extension to 16 bits. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { - "info": "Tic: button pressed", - "readonly": true + "name": "", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 1024, - "y": 152 - }, - "size": { - "width": 184, - "height": 40 + "x": 952, + "y": 368 } }, { - "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", - "type": "basic.info", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { - "info": "Rising edge detector", - "readonly": true + "name": "", + "range": "[8:0]", + "size": 9 }, "position": { - "x": 872, - "y": 248 - }, - "size": { - "width": 184, - "height": 40 + "x": 336, + "y": 368 } }, { - "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", - "type": "basic.info", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "type": "basic.code", "data": { - "info": "Pull up on/off", - "readonly": true + "ports": { + "in": [ + { + "name": "i", + "range": "[8:0]", + "size": 9 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- Number of input bits\nlocalparam X = 9;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 448, - "y": 16 + "x": 504, + "y": 272 }, "size": { - "width": 152, - "height": 40 + "width": 384, + "height": 248 } - }, + } + ], + "wires": [ + { + "source": { + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" + }, + "target": { + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" + }, + "target": { + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" + }, + "size": 9 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 + } + }, + { + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 744, + "y": 136 + } + }, + { + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" + }, + "position": { + "x": 1032, + "y": 184 + } + }, + { + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 304, + "y": 200 + } + }, + { + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false + }, + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false + }, + "position": { + "x": 560, + "y": 56 + } + }, + { + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true + }, + "position": { + "x": 720, + "y": -32 + }, + "size": { + "width": 176, + "height": 40 + } + }, + { + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true + }, + "position": { + "x": 1024, + "y": 152 + }, + "size": { + "width": 184, + "height": 40 + } + }, + { + "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", + "type": "basic.info", + "data": { + "info": "Rising edge detector", + "readonly": true + }, + "position": { + "x": 872, + "y": 248 + }, + "size": { + "width": 184, + "height": 40 + } + }, + { + "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", + "type": "basic.info", + "data": { + "info": "Pull up on/off", + "readonly": true + }, + "position": { + "x": 448, + "y": 16 + }, + "size": { + "width": 152, + "height": 40 + } + }, { "id": "5a5caef3-ffd0-46a4-9f63-e55aa8cd750d", "type": "basic.info", @@ -509,8 +994,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +1006,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +1036,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +1052,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +1062,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +1078,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1103,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1113,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1121,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1144,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -794,24 +1290,12 @@ "height": 88 } }, - { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 320, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, { "id": "70cfa680-3def-482c-b194-054c1f522357", "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { "x": 552, - "y": 264 + "y": 280 }, "size": { "width": 96, @@ -829,16 +1313,28 @@ "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", + "position": { + "x": 320, + "y": 264 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1344,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,226 +1392,6 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { - "package": { - "name": "DFF", - "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 208, - "y": 160 - } - }, - { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 816, - "y": 224 - } - }, - { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 208, - "y": 304 - } - }, - { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { "name": "NOT", @@ -1346,44 +1622,283 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "name": "" + }, + "position": { + "x": 816, + "y": 232 + } + }, + { + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, "position": { "x": 280, @@ -1412,8 +1927,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1939,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1976,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +2032,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +2048,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +2057,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +2069,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +2081,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2111,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2121,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2131,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2153,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2181,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,682 +2366,493 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -376, - "y": -656 - } - }, - { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -224, - "y": -656 - } - }, - { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 952, - "y": -600 - } - }, - { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, - "position": { - "x": 816, - "y": -600 + "x": 824, + "y": 304 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", "clock": false }, "position": { - "x": -376, - "y": -584 + "x": 376, + "y": 320 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "not", + "value": "0", + "local": false }, "position": { - "x": -224, - "y": -584 + "x": 520, + "y": 160 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 552, - "y": -440 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": 840, - "y": -352 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": 536, - "y": -352 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": -288 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 120, - "y": -232 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 120, - "y": -160 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", - "position": { - "x": 704, - "y": -368 + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "info": "Edge detector", - "readonly": true + "name": "" }, "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 + "x": 960, + "y": 248 } }, { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": 376, - "y": -120 - }, - "size": { - "width": 288, - "height": 56 + "x": 728, + "y": 128 } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } }, "position": { - "x": 720, - "y": -456 + "x": 672, + "y": 248 }, "size": { - "width": 304, - "height": 72 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", - "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true - }, - "position": { - "x": 432, - "y": -640 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 360, - "height": 120 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", - "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true - }, - "position": { - "x": -8, - "y": -648 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 312, - "height": 128 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 48 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "Counter", - "readonly": true + "name": "" }, "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 + "x": 560, + "y": 72 } }, { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", + "data": { + "name": "" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 120, + "y": 104 } }, { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", + "data": { + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } + }, "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" - } - }, - { - "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" - } - }, - { - "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "block": "97b51945-d716-4b6c-9db9-970d08541249", "port": "out" }, "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" - } - }, - { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" - } - }, - { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, - { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } - }, - { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" - }, - "vertices": [] - }, - { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" - } } ] } } }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": 104 + "x": -376, + "y": -656 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 216, - "y": 192 + "x": -224, + "y": -656 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 728, - "y": 192 + "x": 952, + "y": -600 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "out" }, "position": { - "x": 240, - "y": 320 + "x": 816, + "y": -600 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "clock": false }, "position": { - "x": 472, - "y": 56 + "x": -376, + "y": -584 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "blockColor": "fuchsia", + "name": "in" }, "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 272, - "height": 104 + "x": -224, + "y": -584 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", - "type": "basic.info", + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", "data": { - "info": "Initial value", - "readonly": true + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 480, - "y": 48 - }, - "size": { - "width": 136, - "height": 32 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "x": 552, + "y": -440 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 840, + "y": -352 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" - } - } - ] - } - } - }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { - "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": -120 + "x": 536, + "y": -352 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { "blockColor": "yellow", "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "oldBlockColor": "fuchsia" }, "position": { - "x": 368, - "y": -120 + "x": 384, + "y": -288 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2534,194 +2860,153 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 384, - "y": -32 + "x": 112, + "y": -248 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "type": "basic.outputLabel", "data": { - "name": "q", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1040, - "y": -32 + "x": 112, + "y": -176 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Edge detector", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "name": "max" + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 368, + "y": -88 + }, + "size": { + "width": 288, + "height": 56 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", + "readonly": true }, "position": { - "x": 1048, - "y": 56 + "x": 720, + "y": -456 + }, + "size": { + "width": 304, + "height": 72 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "Stable output", + "readonly": true }, "position": { - "x": 856, - "y": 144 + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true + }, + "position": { + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", "position": { - "x": 544, - "y": 40 + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 }, "size": { "width": 96, @@ -2729,11 +3014,11 @@ } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", "position": { - "x": 720, - "y": 160 + "x": 520, + "y": -192 }, "size": { "width": 96, @@ -2744,695 +3029,552 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", "port": "inlabel" - }, - "vertices": [] + } }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" }, "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } + }, + { + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" + }, + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" + } + }, + { + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "port": "outlabel" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "port": "in" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", "port": "inlabel" - }, - "size": 16 + } }, { "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", "port": "outlabel" }, "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } }, { "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" }, "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" }, - "vertices": [], - "size": 16 + "vertices": [] }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" - }, - "vertices": [ - { - "x": 840, - "y": 264 - } - ], - "size": 16 + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + } } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -136, - "y": -448 - } - }, - { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": -136, - "y": -376 + "x": 624, + "y": 120 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": -632, - "y": -264 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -480, - "y": -264 - } - }, - { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -216 + "x": 88, + "y": 152 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", "data": { - "name": "rst", + "name": "", "clock": false }, "position": { - "x": -624, - "y": -192 + "x": 88, + "y": 280 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "" }, "position": { - "x": -480, - "y": -192 + "x": 616, + "y": 352 } }, { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": -112, - "y": -144 - } - }, - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": -40 }, - "position": { - "x": -112, - "y": -8 + "size": { + "width": 648, + "height": 96 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Input signal", + "readonly": true }, "position": { - "x": -128, - "y": 72 - } - }, - { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "x": 96, + "y": 256 }, - "position": { - "x": 568, - "y": 104 + "size": { + "width": 136, + "height": 40 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "info": "System clock", + "readonly": true }, "position": { - "x": -576, - "y": 136 - } - }, - { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": 120 }, - "position": { - "x": -128, - "y": 248 + "size": { + "width": 96, + "height": 48 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, + "x": 160, "y": 352 }, "size": { - "width": 96, - "height": 96 + "width": 168, + "height": 48 } }, { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, "position": { - "x": 40, - "y": 104 + "x": 328, + "y": 200 }, "size": { - "width": 96, - "height": 96 + "width": 248, + "height": 48 } }, { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true + }, "position": { - "x": -400, - "y": 104 + "x": 504, + "y": 264 }, "size": { - "width": 96, - "height": 128 + "width": 400, + "height": 72 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": 72 + "x": 480, + "y": 352 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 48, - "y": -152 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 64, - "y": -360 + "x": 320, + "y": 264 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "block": "2708468d-1088-4570-be63-fb0d4799a941", "port": "out" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "port": "in" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": -8, - "y": 376 + "x": 264, + "y": 368 } ] - }, + } + ] + } + } + }, + "8a23ffd0491010ff595493182b82c722bd6902d7": { + "package": { + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 424 } }, { - "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "port": "outlabel" + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "d", + "clock": false }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 536 } }, { - "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "position": { + "x": 824, + "y": 536 } }, { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "type": "basic.input", + "data": { + "name": "load", + "clock": false }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 648 } }, { - "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", - "port": "outlabel" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] - }, - { - "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "port": "out" - }, - "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" - }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -272, - "y": 368 - } - ], - "size": 4 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 488, + "y": 280 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "position": { + "x": 320, + "y": 400 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 - }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" + } }, { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" - }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" - }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { "package": { - "name": "DFF-rst-x04", - "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 }, "design": { "graph": { "blocks": [ - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -160, - "y": -336 - } - }, - { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -168, - "y": -280 - } - }, { "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", @@ -3441,8 +3583,8 @@ "clock": true }, "position": { - "x": -496, - "y": -256 + "x": 216, + "y": -120 } }, { @@ -3461,12 +3603,12 @@ "virtual": true }, "position": { - "x": -344, - "y": -256 + "x": 368, + "y": -120 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -3474,200 +3616,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 112, - "y": -200 + "x": 384, + "y": -32 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "type": "basic.outputLabel", "data": { - "name": "rst", - "clock": false + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -488, - "y": -184 + "x": 1040, + "y": -32 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 112, - "y": -112 - } - }, - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 376, - "y": -8 - } - }, - { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 376, - "y": 80 + "x": 1216, + "y": -32 } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "max" }, "position": { - "x": 1032, - "y": 184 + "x": 1208, + "y": 56 } }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": 528, - "y": 208 + "x": 1048, + "y": 56 } }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" + "clock": false }, "position": { - "x": 520, - "y": 264 + "x": 216, + "y": 56 } }, { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 712, + "y": 88 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 856, + "y": 144 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 272, - "y": -128 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": -16, - "y": -296 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3689,762 +3837,865 @@ }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "port": "inlabel" + }, + "vertices": [] }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "port": "outlabel" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 16 }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "size": 16 }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "port": "out" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } + "vertices": [], + "size": 16 }, { "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": 712, - "y": 128 + "x": 840, + "y": 264 } - ] - }, + ], + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 624, + "y": -168 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 280, + "y": -152 + } + }, + { + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": 624, + "y": -104 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 456, + "y": -256 } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", + "block": "12fb4602-d67f-4129-a777-f04945adf29d", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "size": 4 + "size": 16 }, { "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "size": 16 } ] } } }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "Bus4-Split-all", + "name": "AdderK-16bits", "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its wires", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "3" + "name": "c" }, "position": { - "x": 576, - "y": 80 + "x": 624, + "y": -168 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", "type": "basic.output", "data": { - "name": "2" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 600, - "y": 144 + "x": 624, + "y": -96 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": 128, - "y": 184 + "x": 232, + "y": -56 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "name": "1" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 592, - "y": 240 + "x": 232, + "y": -272 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 568, - "y": 296 + "x": 232, + "y": -168 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": 296, - "y": 176 + "x": 456, + "y": -152 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "84f0a15761ee8b753f67079819a7614923939472": { + "651fa32fcf52b534a766fdb2ba638a010338f268": { "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false - }, - "position": { - "x": 80, - "y": 64 - } - }, - { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false - }, - "position": { - "x": 80, - "y": 136 - } - }, - { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", "type": "basic.output", "data": { "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 712, - "y": 200 - } - }, - { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "type": "basic.input", - "data": { - "name": "1", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 80, - "y": 208 + "x": 960, + "y": 248 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "name": "0", - "clock": false + "name": "", + "value": "0", + "local": false }, "position": { - "x": 80, - "y": 272 + "x": 728, + "y": 128 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], "ports": { - "in": [ - { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" - } - ], + "in": [], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "k", + "range": "[15:0]", + "size": 16 } ] } }, "position": { - "x": 296, - "y": 176 + "x": 672, + "y": 248 }, "size": { - "width": 344, - "height": 104 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[7:0]", "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 8, + "y": -664 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 856, - "y": -56 + "x": 960, + "y": -608 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 200, - "y": -56 + "x": -320, + "y": -608 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": 80 + "x": 8, + "y": -592 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 536, - "y": -40 - }, - "size": { - "width": 96, - "height": 64 + "x": 8, + "y": -472 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", "data": { - "info": "Data input", - "readonly": true + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 216, - "y": 56 - }, - "size": { - "width": 104, - "height": 40 + "x": 184, + "y": -472 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", "data": { - "info": "System clock", - "readonly": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 208, - "y": -304 + "x": -320, + "y": -424 + } + }, + { + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 144, - "height": 40 + "position": { + "x": 8, + "y": -408 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 720, - "y": -200 + "x": 184, + "y": -408 + } + }, + { + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -424 }, "size": { - "width": 152, + "width": 96, "height": 64 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 712, - "y": -56 + "x": -168, + "y": -608 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, @@ -4455,173 +4706,235 @@ "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "port": "outlabel" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "port": "out" + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { - "package": { - "name": "Bus16-Split-quarter", - "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 }, - "position": { - "x": 608, - "y": 64 - } + "size": 8 }, { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "type": "basic.output", - "data": { - "name": "2", - "range": "[3:0]", - "size": 4 + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 640, - "y": 208 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 96, - "y": 224 + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" + }, + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "type": "basic.output", + "data": { + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { "x": 608, - "y": 312 + "y": 176 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 + }, + "position": { + "x": 96, + "y": 208 + } + }, + { + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "type": "basic.output", "data": { "name": "0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, "position": { - "x": 552, - "y": 400 + "x": 608, + "y": 272 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ @@ -4632,25 +4945,15 @@ } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "o0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ] } @@ -4661,7 +4964,7 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], @@ -4677,622 +4980,669 @@ }, "size": 16 }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" - }, - "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "port": "in" }, - "size": 4 + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "port": "o0" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-8bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-8bits: Adder of two operands of 8 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "3", + "name": "a1", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 16, + "y": -688 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "type": "basic.outputLabel", "data": { - "name": "2", + "name": "a1", "range": "[3:0]", - "clock": false, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 104, - "y": 184 + "x": 352, + "y": -664 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 720, - "y": 224 + "x": -312, + "y": -632 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 16, + "y": -616 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "c" }, "position": { - "x": 104, - "y": 312 + "x": 960, + "y": -608 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 + "x": 352, + "y": -584 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", + "data": { + "name": "s", + "range": "[7:0]", + "size": 8 }, - "size": 4 + "position": { + "x": 960, + "y": -544 + } }, { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, - "size": 4 + "position": { + "x": 184, + "y": -472 + } }, { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 + "position": { + "x": 8, + "y": -440 + } }, { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "type": "basic.outputLabel", "data": { - "name": "c" + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 624, - "y": -168 + "x": 184, + "y": -408 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "id": "63477487-9493-4058-a7e1-9bab443ec466", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", + "range": "[7:0]", "clock": false, - "size": 16 + "size": 8 }, "position": { - "x": 280, - "y": -152 + "x": -320, + "y": -384 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 624, - "y": -104 + "x": 8, + "y": -368 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", - "data": { - "name": "", - "value": "1", - "local": true - }, + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -256 + "x": -168, + "y": -384 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -152 + "x": -152, + "y": -632 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, "height": 64 } + }, + { + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } } ], "wires": [ { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" - } + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "port": "inlabel" }, - "size": 16 + "size": 4 }, { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" }, - "position": { - "x": 624, - "y": -168 - } + "size": 4 }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "source": { + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "port": "outlabel" }, - "position": { - "x": 624, - "y": -96 - } - }, - { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 232, - "y": -56 - } + "size": 4 }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, - "position": { - "x": 232, - "y": -272 - } + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 + "source": { + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", - "position": { - "x": 456, - "y": -152 + "source": { + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "63477487-9493-4058-a7e1-9bab443ec466", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "port": "out" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, - "size": 16 + "size": 4 }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 16 + "size": 4 }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", "port": "in" }, - "size": 16 - } + "size": 8 + }, + { + "source": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + } ] } } }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Bus8-Split-half", + "version": "0.1", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", + "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": { "graph": { "blocks": [ { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "1", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 960, - "y": 248 + "x": 584, + "y": 104 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 728, - "y": 128 + "x": 120, + "y": 208 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "type": "basic.output", + "data": { + "name": "0", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 584, + "y": 232 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "params": [], "ports": { - "in": [], + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], "out": [ { - "name": "k", - "range": "[15:0]", - "size": 16 + "name": "o1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 } ] } }, "position": { - "x": 672, - "y": 248 + "x": 272, + "y": 176 }, "size": { - "width": 208, - "height": 64 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" - } + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", + "port": "in" + }, + "size": 4 }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" }, - "size": 16 + "size": 4 + }, + { + "source": { + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 8 } ] } } }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "Adder-16bits", + "name": "Adder-4bits", "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", + "description": "Adder-4bits: Adder of two operands of 4 bits", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -5301,74 +5651,37 @@ "graph": { "blocks": [ { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a3", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -664 + "y": -744 } }, { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[7:0]", "blockColor": "deeppink", - "size": 8 + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 352, - "y": -664 + "x": 576, + "y": -736 } }, { @@ -5378,280 +5691,293 @@ "name": "c" }, "position": { - "x": 960, - "y": -608 + "x": 920, + "y": -696 } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": -320, - "y": -608 + "x": 8, + "y": -688 } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", "type": "basic.inputLabel", "data": { - "name": "a0", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a1", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -592 + "y": -632 } }, { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 352, - "y": -584 + "x": -312, + "y": -632 } }, { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 960, - "y": -544 + "x": 456, + "y": -584 } }, { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a0", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { "x": 8, - "y": -472 + "y": -576 } }, { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -472 + "x": 456, + "y": -528 } }, { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "type": "basic.input", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -320, - "y": -424 + "x": -8, + "y": -448 } }, { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 328, + "y": -440 + } + }, + { + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[7:0]", + "blockColor": "fuchsia", + "name": "b2", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -408 + "x": -8, + "y": -384 } }, { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 184, - "y": -408 + "x": -312, + "y": -384 } }, { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 328, + "y": -376 } }, { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -608 + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 1064, + "y": -368 + } + }, + { + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": -16, + "y": -320 + } + }, + { + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -296 + } + }, + { + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -32, + "y": -264 + } + }, + { + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 + } + }, + { + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -5659,23 +5985,23 @@ } }, { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 352, - "y": -456 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 520, - "y": -600 + "x": 608, + "y": -544 }, "size": { "width": 96, @@ -5683,326 +6009,355 @@ } }, { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 760, - "y": -544 + "x": -168, + "y": -416 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" + } }, { "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "size": 16 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "size": 16 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" + } }, { "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "port": "in" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "size": 16 + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": 8 - } - ] - } - } - }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { - "package": { - "name": "Bus16-Split-half", - "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } + }, { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", - "data": { - "name": "1", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 608, - "y": 176 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 96, - "y": 208 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "type": "basic.output", - "data": { - "name": "0", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 608, - "y": 272 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 } + ] + }, + { + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 272, - "y": 176 + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ + "size": 4 + }, { "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "port": "in" }, - "size": 8 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" + } + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": 8 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } } ] } } }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { "package": { - "name": "Adder-8bits", + "name": "Adder-1bit", "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", + "description": "Adder-1bit: Adder of two operands of 1 bit", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -6011,267 +6366,348 @@ "graph": { "blocks": [ { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "type": "basic.inputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "", + "clock": false }, "position": { - "x": 16, - "y": -688 + "x": 280, + "y": -224 } }, { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "c" }, "position": { - "x": 352, - "y": -664 + "x": 616, + "y": -176 } }, { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 280, + "y": -152 } }, { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "type": "basic.inputLabel", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "s" }, "position": { - "x": 16, - "y": -616 + "x": 616, + "y": -96 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 456, + "y": -168 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 960, - "y": -608 + "x": 304, + "y": -64 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 352, - "y": -584 + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [ + { + "x": 400, + "y": -168 + } + ] + }, + { + "source": { + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "type": "basic.output", + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } + } + ] + } + } + }, + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { + "package": { + "name": "AdderC-1bit", + "version": "0.1", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 960, - "y": -544 + "x": 504, + "y": -208 } }, { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "a", + "clock": false }, "position": { - "x": 184, - "y": -472 + "x": 136, + "y": -192 } }, { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "blockColor": "fuchsia" + "virtual": true }, "position": { - "x": 8, - "y": -440 + "x": 272, + "y": -192 } }, { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 1112, + "y": -176 + } + }, + { + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "b" }, "position": { - "x": 184, - "y": -408 + "x": 504, + "y": -144 } }, { - "id": "63477487-9493-4058-a7e1-9bab443ec466", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "b", + "clock": false }, "position": { - "x": -320, - "y": -384 + "x": 136, + "y": -120 } }, { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -120 + } + }, + { + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": -96 + } + }, + { + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false + }, + "position": { + "x": 136, + "y": -40 + } + }, + { + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -368 + "x": 272, + "y": -40 } }, { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, "position": { - "x": -168, - "y": -384 + "x": 480, + "y": 24 + } + }, + { + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 992, + "y": 56 + } + }, + { + "id": "edf4525b-edd8-40fa-b784-631b102fb907", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b" + }, + "position": { + "x": 480, + "y": 88 + } + }, + { + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": 120 + } + }, + { + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "position": { + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -6279,11 +6715,11 @@ } }, { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -632 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -6291,11 +6727,11 @@ } }, { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 352, - "y": -456 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -6303,11 +6739,11 @@ } }, { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 760, - "y": -544 + "x": 632, + "y": -192 }, "size": { "width": 96, @@ -6315,435 +6751,381 @@ } }, { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 520, - "y": -600 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "port": "outlabel" }, "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } } ] } } }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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" + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 104 + "x": 112, + "y": 40 } }, { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "" }, "position": { - "x": 120, - "y": 208 + "x": 608, + "y": 72 } }, { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 232 + "x": 112, + "y": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", "type": "basic.code", "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", "params": [], "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "a" + }, + { + "name": "b" } ], "out": [ { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 + "name": "c" } ] } }, "position": { - "x": 272, - "y": 176 + "x": 256, + "y": 48 }, "size": { - "width": 240, - "height": 120 + "width": 312, + "height": 104 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } } ] } } }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "" }, "position": { - "x": 8, - "y": -744 + "x": 456, + "y": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "x": 168, + "y": 112 }, - "position": { - "x": 920, - "y": -696 + "size": { + "width": 248, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "source": { + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, - "position": { - "x": 8, - "y": -688 + "target": { + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } - }, + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "3" }, "position": { "x": 576, - "y": -672 + "y": 80 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "2" }, "position": { - "x": 8, - "y": -632 + "x": 600, + "y": 144 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", "type": "basic.input", "data": { "name": "", @@ -6752,785 +7134,709 @@ "size": 4 }, "position": { - "x": -312, - "y": -632 + "x": 128, + "y": 184 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "1" }, "position": { - "x": 456, - "y": -584 + "x": 592, + "y": 240 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "0" }, "position": { - "x": 8, - "y": -576 + "x": 568, + "y": 296 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": 456, - "y": -528 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": -312, - "y": -384 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" }, - "position": { - "x": 328, - "y": -376 - } - }, - { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "position": { - "x": 1064, - "y": -368 - } - }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "3", + "clock": false }, "position": { - "x": -16, - "y": -320 + "x": 80, + "y": 64 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "2", + "clock": false }, "position": { - "x": 184, - "y": -296 + "x": 80, + "y": 136 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -32, - "y": -264 + "x": 712, + "y": 200 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 184, - "y": -232 - } - }, - { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "name": "1", + "clock": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 608, - "y": -544 - }, - "size": { - "width": 96, - "height": 96 + "x": 80, + "y": 208 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": -152, - "y": -664 - }, - "size": { - "width": 96, - "height": 128 + "x": 80, + "y": 272 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 744, - "y": -688 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 344, + "height": 104 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" + }, + "vertices": [ + { + "x": 200, + "y": 176 + } + ] }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } - }, - { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "size": 4 + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 128, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 640, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 128, + "y": 224 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "position": { + "x": 296, + "y": 176 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 4 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 4 + } + ] + } + } + }, + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "package": { + "name": "AdderC-4bits", + "version": "0.1", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -744 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -736 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 920, + "y": -696 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 8, + "y": -688 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -672 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 8, + "y": -632 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": 4 + "position": { + "x": -312, + "y": -632 + } }, { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 456, + "y": -584 + } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "position": { + "x": 8, + "y": -576 + } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": 456, + "y": -528 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": -8, + "y": -448 } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -224 + "x": 328, + "y": -440 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": -176 + "x": -8, + "y": -384 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 280, - "y": -152 + "x": -312, + "y": -384 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", "data": { - "name": "s" + "blockColor": "fuchsia", + "name": "b1" }, "position": { - "x": 616, - "y": -96 - } - }, - { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 456, - "y": -168 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", - "position": { - "x": 304, - "y": -64 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] - }, - { - "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 504, - "y": -208 + "x": 328, + "y": -376 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", "data": { - "name": "a", - "clock": false + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 136, - "y": -192 + "x": 1064, + "y": -368 } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "id": "527c9113-e440-454b-b427-182b646c10f5", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "a", + "name": "b1", "pins": [ { "index": "0", @@ -7541,51 +7847,29 @@ "virtual": true }, "position": { - "x": 272, - "y": -192 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 1112, - "y": -176 + "x": -16, + "y": -320 } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 504, - "y": -144 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 136, - "y": -120 + "x": 184, + "y": -296 } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", + "id": "b652825e-10ba-47cc-9832-e39d73586234", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b", + "name": "b0", "pins": [ { "index": "0", @@ -7593,1767 +7877,1594 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 272, - "y": -120 + "x": -32, + "y": -264 } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "ci", + "blockColor": "fuchsia", + "name": "b0", "oldBlockColor": "fuchsia" }, "position": { - "x": 648, - "y": -96 + "x": 184, + "y": -232 } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", "type": "basic.input", "data": { "name": "ci", "clock": false }, "position": { - "x": 136, - "y": -40 + "x": -296, + "y": -168 } }, { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 272, - "y": -40 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 480, - "y": 24 + "x": 608, + "y": -544 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 992, - "y": 56 + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 480, - "y": 88 - } - }, - { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 648, - "y": 120 - } - }, - { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 832, - "y": 56 + "x": -152, + "y": -664 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 808, - "y": -80 + "x": 896, + "y": -400 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 632, - "y": -192 + "x": 744, + "y": -688 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 960, - "y": -176 + "x": 320, + "y": -248 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" } }, { "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" } }, { "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" + }, + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, + { + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { - "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 120, - "y": 48 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 560, - "y": 72 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 120, - "y": 104 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 272, - "height": 112 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - } - ], - "wires": [ + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" - } + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "position": { - "x": 112, - "y": 40 - } + "size": 4 }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 608, - "y": 72 - } - }, - { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" }, - "position": { - "x": 112, - "y": 96 - } + "size": 4 }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 256, - "y": 48 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" }, - "size": { - "width": 312, - "height": 104 - } - } - ], - "wires": [ + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" }, "position": { - "x": 456, - "y": 120 + "x": -64, + "y": -648 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "type": "basic.input", "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 168, - "y": 112 - }, - "size": { - "width": 248, - "height": 80 - } - } - ], - "wires": [ - { - "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" - }, - "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" + "x": -408, + "y": -584 } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", - "type": "basic.input", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 128, - "y": 168 + "x": -64, + "y": -568 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "name": "c" }, "position": { - "x": 640, - "y": 200 + "x": 832, + "y": -480 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "type": "basic.input", + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", "data": { - "name": "0", + "name": "a1", "range": "[3:0]", - "clock": false, + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 128, - "y": 224 + "x": 248, + "y": -456 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - } + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": -80, + "y": -448 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "port": "in" - }, - "size": 8 }, { - "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", + "data": { + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "size": 4 + "position": { + "x": -400, + "y": -392 + } }, { - "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - }, - "size": 4 - } - ] - } - } - }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { - "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "type": "basic.inputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", + "name": "b0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "deeppink" + "blockColor": "fuchsia" }, "position": { - "x": 8, - "y": -744 + "x": -80, + "y": -376 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 576, - "y": -736 + "x": 248, + "y": -376 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", "type": "basic.output", "data": { - "name": "c" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 920, - "y": -696 + "x": 840, + "y": -336 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", "data": { + "name": "a0", + "range": "[3:0]", "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "size": 4 }, "position": { - "x": 8, - "y": -688 + "x": 120, + "y": -304 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", "type": "basic.outputLabel", "data": { + "name": "b0", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 576, - "y": -672 + "x": 120, + "y": -232 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "ci", + "clock": false }, "position": { - "x": 8, - "y": -632 + "x": -392, + "y": -168 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": -312, - "y": -632 + "x": -248, + "y": -392 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" - }, + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, + "x": -240, "y": -584 - } - }, - { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" }, - "position": { - "x": 8, - "y": -576 + "size": { + "width": 96, + "height": 64 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" - }, + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 456, - "y": -528 - } - }, - { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "x": 688, + "y": -336 }, - "position": { - "x": -8, - "y": -448 + "size": { + "width": 96, + "height": 64 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" - }, + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 328, - "y": -440 + "x": 320, + "y": -248 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": -8, - "y": -384 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": -312, - "y": -384 - } + "target": { + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "port": "inlabel" + }, + "size": 4 }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": 328, - "y": -376 - } + "target": { + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": 1064, - "y": -368 - } + "target": { + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "port": "inlabel" + }, + "size": 4 }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": -16, - "y": -320 - } - }, - { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" }, - "position": { - "x": 184, - "y": -296 - } + "size": 4 }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "port": "outlabel" }, - "position": { - "x": -32, - "y": -264 - } - }, - { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 184, - "y": -232 - } + "size": 4 }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false + "source": { + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" }, - "position": { - "x": -296, - "y": -168 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 96 - } + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "source": { + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "size": 4 }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 + "source": { + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 744, - "y": -688 + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, - { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] + } + ] + } + } + }, + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "package": { + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 120, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 632, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "type": "basic.input", + "data": { + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 120, + "y": 264 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "i0", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 296, + "y": 176 + }, + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "port": "out" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] - }, + "size": 8 + } + ] + } + } + }, + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { + "package": { + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 920, + "y": -24 } }, { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 920, + "y": 56 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 368, + "y": 64 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", + "data": { + "name": "rst", + "clock": false }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 376, + "y": 200 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 920, + "y": 200 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 376, + "y": 336 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 656, + "y": -80 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 528, + "y": 32 }, - "size": 4 - }, + "size": { + "width": 344, + "height": 400 + } + } + ], + "wires": [ { "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" }, "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", "port": "in" }, - "size": 4 + "vertices": [], + "size": 16 }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "vertices": [] }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" } }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" + }, + "size": 16 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", "port": "out" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" } } ] } } }, - "c3c498191b14e9288a85fa2871b3966665f75475": { + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "name": "nc" }, "position": { - "x": -64, - "y": -648 + "x": 384, + "y": -80 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": true }, "position": { - "x": -408, - "y": -584 + "x": -136, + "y": -16 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "type": "basic.inputLabel", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "name": "" }, "position": { - "x": -64, - "y": -568 + "x": 384, + "y": 56 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", "data": { - "name": "c" + "name": "", + "clock": false }, "position": { - "x": 832, - "y": -480 + "x": -136, + "y": 128 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "type": "basic.outputLabel", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 248, - "y": -456 + "x": 32, + "y": -56 + }, + "size": { + "width": 296, + "height": 288 + } + } + ], + "wires": [ + { + "source": { + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" } }, { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" }, - "position": { - "x": -80, - "y": -448 + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" + }, + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", + "clock": true + }, + "position": { + "x": 216, + "y": -40 + } + }, + { + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 368, + "y": -40 + } + }, + { + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", + "data": { + "name": "data", + "range": "[15:0]", "clock": false, - "size": 8 + "size": 16 }, "position": { - "x": -400, - "y": -392 + "x": 200, + "y": 128 } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -80, - "y": -376 + "x": 344, + "y": 128 } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "size": 4 + "size": 16 }, "position": { - "x": 248, - "y": -376 + "x": 560, + "y": 128 } }, { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", "type": "basic.output", "data": { - "name": "s", + "name": "LED", "range": "[7:0]", "size": 8 }, "position": { - "x": 840, - "y": -336 + "x": 1136, + "y": 144 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -304 + "x": 600, + "y": 240 } }, { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" + }, + "position": { + "x": 1208, + "y": 296 + } + }, + { + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "ticsel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -232 + "x": 600, + "y": 312 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "ci", + "name": "sel", "clock": false }, "position": { - "x": -392, - "y": -168 + "x": 200, + "y": 320 } }, { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" + }, "position": { - "x": -248, - "y": -392 + "x": 344, + "y": 320 + } + }, + { + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", + "data": { + "name": "b0" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 1216, + "y": 376 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": -240, - "y": -584 + "x": 1064, + "y": 376 }, "size": { "width": 96, @@ -9361,23 +9472,27 @@ } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true + }, "position": { - "x": 688, - "y": -336 + "x": 1344, + "y": 376 }, "size": { - "width": 96, - "height": 64 + "width": 184, + "height": 56 } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 320, - "y": -248 + "x": 952, + "y": 128 }, "size": { "width": 96, @@ -9385,1224 +9500,1175 @@ } }, { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 464, - "y": -392 + "x": 720, + "y": 128 }, "size": { "width": 96, - "height": 96 + "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "port": "inlabel" + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", + "position": { + "x": 744, + "y": 296 }, - "size": 4 - }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" }, - "size": 4 + "vertices": [] }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "port": "outlabel" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + } }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "port": "inlabel" }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], - "size": 4 + "size": 16 }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "block": "514effa0-6d57-4281-b479-22d05798dceb", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 }, - "size": 4 + "size": 16 }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], - "size": 4 - }, - { - "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "size": 8 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" - }, - "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" }, "size": 8 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "port": "in" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - }, - "vertices": [ - { - "x": 624, - "y": -392 - } - ] + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "d1a52ec25aee5e4823102a32325600666fe99e12": { "package": { - "name": "Bus16-Join-half", + "name": "8-bits-Mux-2-1", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "2-to-1 Multplexer (8-bit channels)", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 120, - "y": 168 + "x": 768, + "y": 192 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 632, - "y": 200 + "x": 552, + "y": 208 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "id": "520455a3-592c-4fd0-ade9-62d366c88919", "type": "basic.input", "data": { - "name": "0", + "name": "1", "range": "[7:0]", "clock": false, "size": 8 }, "position": { - "x": 120, + "x": 200, "y": 264 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } - }, - "position": { - "x": 296, - "y": 176 + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, - "size": { - "width": 272, - "height": 104 + "position": { + "x": 768, + "y": 264 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", + "data": { + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "size": 8 + "position": { + "x": 544, + "y": 280 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": 808, + "y": 416 + } + }, { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[7:0]", + "size": 8 }, "position": { - "x": 88, - "y": 152 + "x": 1336, + "y": 432 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": false + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, "position": { - "x": 88, - "y": 280 + "x": 584, + "y": 528 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "type": "basic.output", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 616, - "y": 352 + "x": 808, + "y": 552 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", + "type": "basic.input", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 + "x": 208, + "y": 592 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "type": "basic.inputLabel", "data": { - "info": "Input signal", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": 584, + "y": 608 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "type": "basic.outputLabel", "data": { - "info": "System clock", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 808, + "y": 616 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "info": "Current signal \nstate", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 808, + "y": 680 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "name": "sel", + "clock": false }, "position": { - "x": 328, - "y": 200 + "x": 392, + "y": 768 + } + }, + { + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 248, - "height": 48 + "position": { + "x": 552, + "y": 768 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", "type": "basic.info", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "info": "Channel B", "readonly": true }, "position": { - "x": 504, - "y": 264 + "x": 424, + "y": 512 }, "size": { - "width": 400, - "height": 72 + "width": 144, + "height": 32 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 480, - "y": 352 + "x": 968, + "y": 568 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", "type": "basic.info", "data": { - "info": "In any other case the output is 0", + "info": "Channel A", "readonly": true }, "position": { - "x": 520, - "y": 432 + "x": 424, + "y": 168 }, "size": { - "width": 296, - "height": 40 + "width": 144, + "height": 32 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 320, - "y": 264 + "x": 1152, + "y": 432 }, "size": { "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 376, + "y": 264 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "size": { + "width": 96, + "height": 64 } }, { - "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 392, + "y": 592 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 64 } }, + { + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", + "position": { + "x": 960, + "y": 248 + }, + "size": { + "width": 96, + "height": 96 + } + } + ], + "wires": [ { "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "port": "inlabel" } }, { "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, "vertices": [ { - "x": 264, - "y": 368 + "x": 928, + "y": 624 } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -256, - "y": -56 - } + ], + "size": 4 }, { - "id": "e226f910-14af-473d-956b-03559f466726", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "source": { + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" }, - "position": { - "x": -104, - "y": -56 - } - }, - { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "target": { + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "position": { - "x": 128, - "y": 32 - } + "size": 4 }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "source": { + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -56, - "y": 72 - } - }, - { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", - "data": { - "name": "" + "target": { + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" }, - "position": { - "x": 424, - "y": 128 - } + "size": 4 }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -64, - "y": 160 - } + "target": { + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" + }, + "size": 4 }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 104, - "y": 144 + "source": { + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 280, - "y": 128 + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" + }, + "size": 4 + }, { "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "e226f910-14af-473d-956b-03559f466726", + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", "port": "inlabel" - } + }, + "size": 4 }, { "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", "port": "outlabel" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "port": "out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "520455a3-592c-4fd0-ade9-62d366c88919", + "port": "out" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" - } - } - ] + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" + }, + "target": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + }, + "target": { + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "vertices": [ + { + "x": 1088, + "y": 360 + } + ], + "size": 4 + } + ] } } }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "name": "4-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (4-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 824, - "y": 304 + "x": 712, + "y": -72 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 376, - "y": 320 + "x": 712, + "y": 0 } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "not", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 520, - "y": 160 + "x": 712, + "y": 72 } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 632, - "y": 392 - }, - "size": { - "width": 336, - "height": 96 + "x": 712, + "y": 160 } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 8 - }, - "size": { - "width": 296, - "height": 144 + "x": 432, + "y": 160 } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", "position": { - "x": 520, - "y": 256 - }, - "size": { - "width": 96, - "height": 64 + "x": 440, + "y": 224 } - } - ], - "wires": [ - { - "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" - }, - "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - }, - "vertices": [] }, { - "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 712, + "y": 232 } }, { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": 120, + "y": 240 } }, { - "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 960, - "y": 248 + "x": 432, + "y": 296 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 128 + "x": 712, + "y": 304 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", "data": { - "code": "assign k = VALUE;", - "params": [ + "blockColor": "fuchsia", + "name": "A0", + "pins": [ { - "name": "VALUE" + "index": "0", + "name": "NULL", + "value": "NULL" } ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 672, - "y": 248 - }, - "size": { - "width": 208, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" - }, - "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "x": 416, + "y": 360 } }, { - "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A1", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "port": "in" + "position": { + "x": 712, + "y": 400 } - } - ] - } - } - }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { - "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[3:0]", + "size": 4 }, "position": { - "x": 216, - "y": -40 + "x": 1256, + "y": 416 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "turquoise", + "name": "B3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 368, - "y": -40 + "x": 456, + "y": 464 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "type": "basic.input", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", + "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 200, - "y": 128 + "x": 712, + "y": 488 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "turquoise", + "name": "B2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 344, - "y": 128 + "x": 464, + "y": 528 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 120, + "y": 544 + } + }, + { + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": 712, + "y": 560 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", "data": { - "name": "LED", - "range": "[7:0]", - "size": 8 + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1136, - "y": 144 + "x": 464, + "y": 592 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "A0" }, "position": { - "x": 600, - "y": 240 + "x": 720, + "y": 648 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", "data": { - "name": "byte" + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1208, - "y": 296 + "x": 432, + "y": 648 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "turquoise", + "name": "B0", "oldBlockColor": "fuchsia" }, "position": { - "x": 600, - "y": 312 + "x": 720, + "y": 720 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { "name": "sel", "clock": false }, "position": { - "x": 200, - "y": 320 + "x": 104, + "y": 728 } }, { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "navy", + "name": "sel", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 344, - "y": 320 + "x": 264, + "y": 728 } }, { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "name": "b0" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1216, - "y": 376 + "x": 712, + "y": 800 } }, { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 1064, - "y": 376 + "x": 856, + "y": 472 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 864, + "y": 704 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", "type": "basic.info", "data": { - "info": "Byte 0 \n(least significant) ", + "info": "Channel A", "readonly": true }, "position": { - "x": 1344, - "y": 376 + "x": 304, + "y": 128 }, "size": { - "width": 184, - "height": 56 + "width": 144, + "height": 32 } }, { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", + "data": { + "info": "Channel B", + "readonly": true + }, "position": { - "x": 744, - "y": 296 + "x": 304, + "y": 480 + }, + "size": { + "width": 144, + "height": 32 + } + }, + { + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 216 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 952, - "y": 128 + "x": 1040, + "y": 384 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": -16 }, "size": { "width": 96, @@ -10610,3224 +10676,759 @@ } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 720, - "y": 128 + "x": 288, + "y": 512 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 280, + "y": 208 + }, + "size": { + "width": 96, + "height": 128 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" + } + }, + { + "source": { + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", "port": "inlabel" } }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "port": "inlabel" } }, { "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", "port": "inlabel" + } + }, + { + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "size": 16 + "target": { + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "port": "inlabel" + } }, { "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "port": "outlabel" }, "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 - }, - "size": 16 + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "port": "outlabel" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, - "size": 8 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + } }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - } - ] - } - } - }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { - "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 232, - "y": -112 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 - } - }, - { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 880, - "y": 16 - } - }, - { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 32 - } - }, - { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 - }, - "size": { - "width": 96, - "height": 64 + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", - "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", "port": "outlabel" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" - } - }, - { - "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "port": "inlabel" - } + "vertices": [] }, { "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", "port": "outlabel" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" - } + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "port": "inlabel" } }, { "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", + "port": "inlabel" } }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" }, - "vertices": [] + "vertices": [ + { + "x": 984, + "y": 472 + } + ] }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } - } - ] - } - } - }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { - "package": { - "name": "1-bit-reg", - "version": "0.1", - "description": "Reg: 1-Bit register", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", - "data": { - "name": "", - "clock": true + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" }, - "position": { - "x": 80, - "y": 440 - } + "vertices": [ + { + "x": 976, + "y": 352 + } + ] }, { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "source": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 224, - "y": 440 - } - }, - { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "target": { + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", + "port": "in" }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", - "clock": false - }, - "position": { - "x": 80, - "y": 552 - } - }, - { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 1152, - "y": 592 - } - }, - { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" - }, - "position": { - "x": 232, - "y": 632 - } - }, - { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "type": "basic.input", - "data": { - "name": "load", - "clock": false - }, - "position": { - "x": 80, - "y": 632 - } - }, - { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "type": "basic.outputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 688 - } - }, - { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 784, - "y": 504 - } - }, - { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, - "position": { - "x": 640, - "y": 712 - }, - "size": { - "width": 104, - "height": 40 - } - }, - { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, - "position": { - "x": 776, - "y": 680 - }, - "size": { - "width": 120, - "height": 48 - } - }, - { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", - "position": { - "x": 616, - "y": 600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 784, - "y": 600 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" - }, - "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", - "port": "inlabel" - } - }, - { - "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "port": "out" - }, - "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", - "port": "inlabel" - } - }, - { - "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] + "size": 4 }, { "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - }, - "vertices": [] - }, - { - "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { - "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 144, - "y": 504 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - } - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 456, - "y": 360 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1096, - "y": 392 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 136, - "y": 416 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": 416 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": 528 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 136, - "y": 528 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 616, - "y": 552 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 376, - "y": 656 - } - }, - { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 952, - "y": 392 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 600, - "y": 376 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 624, - "y": 656 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 784, - "y": 568 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - }, - "vertices": [] - }, - { - "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - } - ] - } - } - }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { - "package": { - "name": "8-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "type": "basic.outputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 768, - "y": 192 - } - }, - { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "type": "basic.inputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 552, - "y": 208 - } - }, - { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", - "type": "basic.input", - "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 200, - "y": 264 - } - }, - { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "type": "basic.outputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 768, - "y": 264 - } - }, - { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "type": "basic.inputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 544, - "y": 280 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 416 - } - }, - { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 1336, - "y": 432 - } - }, - { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "blockColor": "lightseagreen", - "size": 4 - }, - "position": { - "x": 584, - "y": 528 - } - }, - { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "type": "basic.outputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 808, - "y": 552 - } - }, - { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", - "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 208, - "y": 592 - } - }, - { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "type": "basic.inputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 584, - "y": 608 - } - }, - { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "type": "basic.outputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 808, - "y": 616 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 680 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 392, - "y": 768 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 552, - "y": 768 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 424, - "y": 512 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 968, - "y": 568 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 424, - "y": 168 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 1152, - "y": 432 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 376, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 392, - "y": 592 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 960, - "y": 248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 - }, - { - "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" - }, - "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" - }, - "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "vertices": [ - { - "x": 1088, - "y": 360 - } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } - }, - { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 0 - } - }, - { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 72 - } - }, - { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 160 - } - }, - { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 - } - }, - { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 440, - "y": 224 - } - }, - { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 232 - } - }, - { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 240 - } - }, - { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 432, - "y": 296 - } - }, - { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 304 - } - }, - { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 360 - } - }, - { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 400 - } - }, - { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1256, - "y": 416 - } - }, - { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 456, - "y": 464 - } - }, - { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 488 - } - }, - { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 464, - "y": 528 - } - }, - { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 560 - } - }, - { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 592 - } - }, - { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0" - }, - "position": { - "x": 720, - "y": 648 - } - }, - { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 720, - "y": 720 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 104, - "y": 728 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 264, - "y": 728 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 800 - } - }, - { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 216 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 1040, - "y": 384 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": -16 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 288, - "y": 512 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 280, - "y": 208 - }, - "size": { - "width": 96, - "height": 128 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } - }, - { - "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" - } - }, - { - "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] - }, - { - "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] - }, - { - "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" - }, - "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" - }, - "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - } - ] - } - } - }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { - "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 496, - "y": 80 - } - }, - { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "type": "basic.input", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": -16, - "y": 80 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", - "data": { - "info": "Input", - "readonly": true - }, - "position": { - "x": 24, - "y": 56 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 512, - "y": 48 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" - }, - "position": { - "x": 176, - "y": 64 - }, - "size": { - "width": 232, - "height": 96 + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } - } - ], - "wires": [ + }, { "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" }, "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 }, { "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", "port": "out" }, "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 } ] } } }, - "0b9f1f5f0769c4e3803ee8c8f0ce30758b824f0b": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "UINT16-9bit-verilog", + "name": "Mux-2-1", "version": "0.1", - "description": "UINT32-9bit-verilog: Extend a 9-bit unsigned integer to 32-bits. Verilog implementation ", + "description": "2-to-1 Multplexer (1-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, + "position": { + "x": 456, + "y": 360 + } + }, + { + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", "type": "basic.output", "data": { - "name": "", - "virtual": true, - "range": "[15:0]", + "name": "" + }, + "position": { + "x": 1096, + "y": 392 + } + }, + { + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "1", + "clock": false + }, + "position": { + "x": 136, + "y": 416 + } + }, + { + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" } - ] + ], + "virtual": true }, "position": { - "x": 920, - "y": 304 + "x": 272, + "y": 416 } }, { - "id": "d33d80cb-32b8-43a2-8899-68a02185116d", - "type": "basic.input", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "type": "basic.inputLabel", "data": { - "name": "i", - "virtual": true, - "range": "[8:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ - { - "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" } ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 272, + "y": 528 + } + }, + { + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "type": "basic.input", + "data": { + "name": "0", + "clock": false + }, + "position": { + "x": 136, + "y": 528 + } + }, + { + "id": "8d94a294-a698-43c5-9777-874fd39b8586", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 616, + "y": 552 + } + }, + { + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", + "data": { + "name": "sel", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 376, + "y": 656 + } + }, + { + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "position": { + "x": 952, + "y": 392 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 600, + "y": 376 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[8:0]", - "size": 9 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 9;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "position": { + "x": 624, + "y": 656 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 512, - "y": 272 + "x": 784, + "y": 568 }, "size": { - "width": 344, - "height": 120 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "port": "outlabel" + }, + "target": { + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "port": "outlabel" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" + }, + "target": { + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "port": "inlabel" + } + }, + { + "source": { + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "port": "out" + }, + "target": { + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "port": "inlabel" + } + }, + { + "source": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", "port": "in" }, - "size": 16 + "vertices": [] + }, + { + "source": { + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] }, { "source": { - "block": "d33d80cb-32b8-43a2-8899-68a02185116d", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "size": 9 + "vertices": [] + }, + { + "source": { + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" + }, + "target": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] } ] } } }, - "71feb8be43b821aa497dfd5889eaa1727c8b58a0": { + "b7f7136a87c607769a64233fd99bc12818a05746": { "package": { - "name": "Copy-9-verilog", - "version": "0.2", - "description": "Copy-9: Copy the input wire twice and generate a 9 bits Bus output (Verilog implementation)", + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "clock": false + "clock": true }, "position": { - "x": 448, - "y": 176 + "x": 328, + "y": -80 } }, { - "id": "48e0c4c8-86bd-478b-bc97-2c7939dc0192", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 + } + }, + { + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "type": "basic.input", "data": { "name": "", - "range": "[8:0]", - "size": 9 + "clock": false }, "position": { - "x": 992, - "y": 176 + "x": 320, + "y": 64 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i" + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[8:0]", - "size": 9 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N=9;\n\nassign o = {N{i}};\n" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 632, - "y": 144 + "x": 496, + "y": -120 }, "size": { - "width": 288, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" + }, + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "port": "out" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" } }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "port": "out" }, "target": { - "block": "48e0c4c8-86bd-478b-bc97-2c7939dc0192", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 9 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } diff --git a/examples/TESTs/Uint/Uint16/10-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/10-bits/Alhambra-II/01-Manual-testing.ice index 99c0ea6c..08d5d391 100644 --- a/examples/TESTs/Uint/Uint16/10-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/10-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-10bit Manual testing", + "info": "## 10-Uint16 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,22 +154,22 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "8cd8761c-b4df-447b-969c-6284ebbdef69", + "type": "92c157aacfe690101ce5bd388a4a75197805bd3e", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "3fb49fa2-e00f-4d50-b14d-92961fa3548d", + "type": "833f81ded1e161cffa0f01706dfd087182aae388", "position": { - "x": 728, + "x": 544, "y": 56 }, "size": { @@ -178,11 +178,11 @@ } }, { - "id": "4a158487-f76b-43fd-9cef-da80a68ccad5", - "type": "5a638807b588f70809fd8c0f9c7b2149e68abe80", + "id": "66c59857-d0cf-4b1e-8fa3-343c497d6cdd", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 544, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -190,15 +190,15 @@ } }, { - "id": "8cd8761c-b4df-447b-969c-6284ebbdef69", - "type": "92c157aacfe690101ce5bd388a4a75197805bd3e", + "id": "3652f321-51a7-4433-88c8-a57b2470322f", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 344, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "3652f321-51a7-4433-88c8-a57b2470322f", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "3652f321-51a7-4433-88c8-a57b2470322f", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "66c59857-d0cf-4b1e-8fa3-343c497d6cdd", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "66c59857-d0cf-4b1e-8fa3-343c497d6cdd", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "3652f321-51a7-4433-88c8-a57b2470322f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "3652f321-51a7-4433-88c8-a57b2470322f", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "4a158487-f76b-43fd-9cef-da80a68ccad5", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "3fb49fa2-e00f-4d50-b14d-92961fa3548d", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "3e95f817-b03b-454c-8616-72fdc16001bf" }, "target": { - "block": "4a158487-f76b-43fd-9cef-da80a68ccad5", - "port": "1fb8912c-d7eb-48e6-97b0-55e4e0583970" + "block": "3fb49fa2-e00f-4d50-b14d-92961fa3548d", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 10 } @@ -291,207 +291,692 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 744, - "y": 136 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", - "data": { - "name": "Press" + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 1024, - "y": 168 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" }, - "position": { - "x": 304, - "y": 200 - } - }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "92c157aacfe690101ce5bd388a4a75197805bd3e": { + "package": { + "name": "Copy-10-verilog", + "version": "0.2", + "description": "Copy-10: Copy the input wire twice and generate a 10 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "3e95f817-b03b-454c-8616-72fdc16001bf", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "range": "[9:0]", + "size": 10 }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[9:0]", + "size": 10 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=10;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" + }, + "target": { + "block": "3e95f817-b03b-454c-8616-72fdc16001bf", + "port": "in" + }, + "size": 10 + } + ] + } + } + }, + "833f81ded1e161cffa0f01706dfd087182aae388": { + "package": { + "name": "10-Uint16", + "version": "0.4", + "description": "10-Uint16: 10 bits unsigned integer extension to 16 bits. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { - "info": "Tic: button pressed", - "readonly": true + "name": "", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 1024, - "y": 152 - }, - "size": { - "width": 184, - "height": 40 + "x": 952, + "y": 368 } }, { - "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", - "type": "basic.info", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { - "info": "Rising edge detector", - "readonly": true + "name": "", + "range": "[9:0]", + "size": 10 }, "position": { - "x": 872, - "y": 248 - }, - "size": { - "width": 184, - "height": 40 + "x": 336, + "y": 368 } }, { - "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", - "type": "basic.info", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "type": "basic.code", "data": { - "info": "Pull up on/off", - "readonly": true + "ports": { + "in": [ + { + "name": "i", + "range": "[9:0]", + "size": 10 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- Number of input bits\nlocalparam X = 10;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 448, - "y": 16 + "x": 504, + "y": 272 }, "size": { - "width": 152, - "height": 40 + "width": 384, + "height": 248 } - }, + } + ], + "wires": [ + { + "source": { + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" + }, + "target": { + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" + }, + "target": { + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" + }, + "size": 10 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 + } + }, + { + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 744, + "y": 136 + } + }, + { + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" + }, + "position": { + "x": 1032, + "y": 184 + } + }, + { + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 304, + "y": 200 + } + }, + { + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false + }, + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false + }, + "position": { + "x": 560, + "y": 56 + } + }, + { + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true + }, + "position": { + "x": 720, + "y": -32 + }, + "size": { + "width": 176, + "height": 40 + } + }, + { + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true + }, + "position": { + "x": 1024, + "y": 152 + }, + "size": { + "width": 184, + "height": 40 + } + }, + { + "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", + "type": "basic.info", + "data": { + "info": "Rising edge detector", + "readonly": true + }, + "position": { + "x": 872, + "y": 248 + }, + "size": { + "width": 184, + "height": 40 + } + }, + { + "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", + "type": "basic.info", + "data": { + "info": "Pull up on/off", + "readonly": true + }, + "position": { + "x": 448, + "y": 16 + }, + "size": { + "width": 152, + "height": 40 + } + }, { "id": "5a5caef3-ffd0-46a4-9f63-e55aa8cd750d", "type": "basic.info", @@ -509,8 +994,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +1006,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +1036,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +1052,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +1062,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +1078,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1103,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1113,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1121,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1144,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -794,24 +1290,12 @@ "height": 88 } }, - { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 320, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, { "id": "70cfa680-3def-482c-b194-054c1f522357", "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { "x": 552, - "y": 264 + "y": 280 }, "size": { "width": 96, @@ -829,16 +1313,28 @@ "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", + "position": { + "x": 320, + "y": 264 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1344,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,226 +1392,6 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { - "package": { - "name": "DFF", - "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 208, - "y": 160 - } - }, - { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 816, - "y": 224 - } - }, - { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 208, - "y": 304 - } - }, - { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { "name": "NOT", @@ -1346,44 +1622,283 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "name": "" + }, + "position": { + "x": 816, + "y": 232 + } + }, + { + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, "position": { "x": 280, @@ -1412,8 +1927,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1939,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1976,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +2032,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +2048,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +2057,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +2069,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +2081,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2111,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2121,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2131,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2153,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2181,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,682 +2366,493 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -376, - "y": -656 - } - }, - { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -224, - "y": -656 - } - }, - { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 952, - "y": -600 - } - }, - { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, - "position": { - "x": 816, - "y": -600 + "x": 824, + "y": 304 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", "clock": false }, "position": { - "x": -376, - "y": -584 + "x": 376, + "y": 320 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "not", + "value": "0", + "local": false }, "position": { - "x": -224, - "y": -584 + "x": 520, + "y": 160 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 552, - "y": -440 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": 840, - "y": -352 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": 536, - "y": -352 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": -288 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 120, - "y": -232 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 120, - "y": -160 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", - "position": { - "x": 704, - "y": -368 + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "info": "Edge detector", - "readonly": true + "name": "" }, "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 + "x": 960, + "y": 248 } }, { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": 376, - "y": -120 - }, - "size": { - "width": 288, - "height": 56 + "x": 728, + "y": 128 } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } }, "position": { - "x": 720, - "y": -456 + "x": 672, + "y": 248 }, "size": { - "width": 304, - "height": 72 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", - "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true - }, - "position": { - "x": 432, - "y": -640 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 360, - "height": 120 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", - "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true - }, - "position": { - "x": -8, - "y": -648 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 312, - "height": 128 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 48 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "Counter", - "readonly": true + "name": "" }, "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 + "x": 560, + "y": 72 } }, { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", + "data": { + "name": "" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 120, + "y": 104 } }, { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", + "data": { + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } + }, "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" - } - }, - { - "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" - } - }, - { - "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "block": "97b51945-d716-4b6c-9db9-970d08541249", "port": "out" }, "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" - } - }, - { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" - } - }, - { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, - { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } - }, - { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" - }, - "vertices": [] - }, - { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" - } } ] } } }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": 104 + "x": -376, + "y": -656 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 216, - "y": 192 + "x": -224, + "y": -656 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 728, - "y": 192 + "x": 952, + "y": -600 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "out" }, "position": { - "x": 240, - "y": 320 + "x": 816, + "y": -600 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "clock": false }, "position": { - "x": 472, - "y": 56 + "x": -376, + "y": -584 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "blockColor": "fuchsia", + "name": "in" }, "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 272, - "height": 104 + "x": -224, + "y": -584 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", - "type": "basic.info", + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", "data": { - "info": "Initial value", - "readonly": true + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 480, - "y": 48 - }, - "size": { - "width": 136, - "height": 32 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "x": 552, + "y": -440 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 840, + "y": -352 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" - } - } - ] - } - } - }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { - "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": -120 + "x": 536, + "y": -352 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { "blockColor": "yellow", "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "oldBlockColor": "fuchsia" }, "position": { - "x": 368, - "y": -120 + "x": 384, + "y": -288 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2534,194 +2860,153 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 384, - "y": -32 + "x": 112, + "y": -248 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "type": "basic.outputLabel", "data": { - "name": "q", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1040, - "y": -32 + "x": 112, + "y": -176 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Edge detector", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "name": "max" + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 368, + "y": -88 + }, + "size": { + "width": 288, + "height": 56 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", + "readonly": true }, "position": { - "x": 1048, - "y": 56 + "x": 720, + "y": -456 + }, + "size": { + "width": 304, + "height": 72 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "Stable output", + "readonly": true }, "position": { - "x": 856, - "y": 144 + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true + }, + "position": { + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", "position": { - "x": 544, - "y": 40 + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 }, "size": { "width": 96, @@ -2729,11 +3014,11 @@ } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", "position": { - "x": 720, - "y": 160 + "x": 520, + "y": -192 }, "size": { "width": 96, @@ -2744,695 +3029,552 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", "port": "inlabel" - }, - "vertices": [] + } }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" }, "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } + }, + { + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" + }, + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" + } + }, + { + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "port": "outlabel" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "port": "in" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", "port": "inlabel" - }, - "size": 16 + } }, { "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", "port": "outlabel" }, "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } }, { "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" }, "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" }, - "vertices": [], - "size": 16 + "vertices": [] }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" - }, - "vertices": [ - { - "x": 840, - "y": 264 - } - ], - "size": 16 + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + } } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -136, - "y": -448 - } - }, - { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": -136, - "y": -376 + "x": 624, + "y": 120 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": -632, - "y": -264 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -480, - "y": -264 - } - }, - { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -216 + "x": 88, + "y": 152 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", "data": { - "name": "rst", + "name": "", "clock": false }, "position": { - "x": -624, - "y": -192 + "x": 88, + "y": 280 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "" }, "position": { - "x": -480, - "y": -192 + "x": 616, + "y": 352 } }, { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": -112, - "y": -144 - } - }, - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": -40 }, - "position": { - "x": -112, - "y": -8 + "size": { + "width": 648, + "height": 96 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Input signal", + "readonly": true }, "position": { - "x": -128, - "y": 72 - } - }, - { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "x": 96, + "y": 256 }, - "position": { - "x": 568, - "y": 104 + "size": { + "width": 136, + "height": 40 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "info": "System clock", + "readonly": true }, "position": { - "x": -576, - "y": 136 - } - }, - { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": 120 }, - "position": { - "x": -128, - "y": 248 + "size": { + "width": 96, + "height": 48 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, + "x": 160, "y": 352 }, "size": { - "width": 96, - "height": 96 + "width": 168, + "height": 48 } }, { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, "position": { - "x": 40, - "y": 104 + "x": 328, + "y": 200 }, "size": { - "width": 96, - "height": 96 + "width": 248, + "height": 48 } }, { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true + }, "position": { - "x": -400, - "y": 104 + "x": 504, + "y": 264 }, "size": { - "width": 96, - "height": 128 + "width": 400, + "height": 72 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": 72 + "x": 480, + "y": 352 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 48, - "y": -152 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 64, - "y": -360 + "x": 320, + "y": 264 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "block": "2708468d-1088-4570-be63-fb0d4799a941", "port": "out" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "port": "in" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": -8, - "y": 376 + "x": 264, + "y": 368 } ] - }, + } + ] + } + } + }, + "8a23ffd0491010ff595493182b82c722bd6902d7": { + "package": { + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 424 } }, { - "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "port": "outlabel" + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "d", + "clock": false }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 536 } }, { - "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "position": { + "x": 824, + "y": 536 } }, { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "type": "basic.input", + "data": { + "name": "load", + "clock": false }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 648 } }, { - "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", - "port": "outlabel" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] - }, - { - "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "port": "out" - }, - "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" - }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -272, - "y": 368 - } - ], - "size": 4 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 488, + "y": 280 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "position": { + "x": 320, + "y": 400 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 - }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" + } }, { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" - }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" - }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { "package": { - "name": "DFF-rst-x04", - "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 }, "design": { "graph": { "blocks": [ - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -160, - "y": -336 - } - }, - { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -168, - "y": -280 - } - }, { "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", @@ -3441,8 +3583,8 @@ "clock": true }, "position": { - "x": -496, - "y": -256 + "x": 216, + "y": -120 } }, { @@ -3461,12 +3603,12 @@ "virtual": true }, "position": { - "x": -344, - "y": -256 + "x": 368, + "y": -120 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -3474,200 +3616,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 112, - "y": -200 + "x": 384, + "y": -32 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "type": "basic.outputLabel", "data": { - "name": "rst", - "clock": false + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -488, - "y": -184 + "x": 1040, + "y": -32 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 112, - "y": -112 - } - }, - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 376, - "y": -8 - } - }, - { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 376, - "y": 80 + "x": 1216, + "y": -32 } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "max" }, "position": { - "x": 1032, - "y": 184 + "x": 1208, + "y": 56 } }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": 528, - "y": 208 + "x": 1048, + "y": 56 } }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" + "clock": false }, "position": { - "x": 520, - "y": 264 + "x": 216, + "y": 56 } }, { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 712, + "y": 88 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 856, + "y": 144 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 272, - "y": -128 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": -16, - "y": -296 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3689,762 +3837,865 @@ }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "port": "inlabel" + }, + "vertices": [] }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "port": "outlabel" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 16 }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "size": 16 }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "port": "out" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } + "vertices": [], + "size": 16 }, { "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": 712, - "y": 128 + "x": 840, + "y": 264 } - ] - }, + ], + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 624, + "y": -168 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 280, + "y": -152 + } + }, + { + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": 624, + "y": -104 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 456, + "y": -256 } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", + "block": "12fb4602-d67f-4129-a777-f04945adf29d", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "size": 4 + "size": 16 }, { "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "size": 16 } ] } } }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "Bus4-Split-all", + "name": "AdderK-16bits", "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its wires", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "3" + "name": "c" }, "position": { - "x": 576, - "y": 80 + "x": 624, + "y": -168 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", "type": "basic.output", "data": { - "name": "2" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 600, - "y": 144 + "x": 624, + "y": -96 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": 128, - "y": 184 + "x": 232, + "y": -56 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "name": "1" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 592, - "y": 240 + "x": 232, + "y": -272 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 568, - "y": 296 + "x": 232, + "y": -168 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": 296, - "y": 176 + "x": 456, + "y": -152 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "84f0a15761ee8b753f67079819a7614923939472": { + "651fa32fcf52b534a766fdb2ba638a010338f268": { "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false - }, - "position": { - "x": 80, - "y": 64 - } - }, - { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false - }, - "position": { - "x": 80, - "y": 136 - } - }, - { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", "type": "basic.output", "data": { "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 712, - "y": 200 - } - }, - { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "type": "basic.input", - "data": { - "name": "1", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 80, - "y": 208 + "x": 960, + "y": 248 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "name": "0", - "clock": false + "name": "", + "value": "0", + "local": false }, "position": { - "x": 80, - "y": 272 + "x": 728, + "y": 128 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], "ports": { - "in": [ - { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" - } - ], + "in": [], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "k", + "range": "[15:0]", + "size": 16 } ] } }, "position": { - "x": 296, - "y": 176 + "x": 672, + "y": 248 }, "size": { - "width": 344, - "height": 104 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[7:0]", "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 8, + "y": -664 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 856, - "y": -56 + "x": 960, + "y": -608 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 200, - "y": -56 + "x": -320, + "y": -608 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": 80 + "x": 8, + "y": -592 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 536, - "y": -40 - }, - "size": { - "width": 96, - "height": 64 + "x": 8, + "y": -472 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", "data": { - "info": "Data input", - "readonly": true + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 216, - "y": 56 - }, - "size": { - "width": 104, - "height": 40 + "x": 184, + "y": -472 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", "data": { - "info": "System clock", - "readonly": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 208, - "y": -304 + "x": -320, + "y": -424 + } + }, + { + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 144, - "height": 40 + "position": { + "x": 8, + "y": -408 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 720, - "y": -200 + "x": 184, + "y": -408 + } + }, + { + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -424 }, "size": { - "width": 152, + "width": 96, "height": 64 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 712, - "y": -56 + "x": -168, + "y": -608 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, @@ -4455,173 +4706,235 @@ "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "port": "outlabel" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "port": "out" + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { - "package": { - "name": "Bus16-Split-quarter", - "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 }, - "position": { - "x": 608, - "y": 64 - } + "size": 8 }, { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "type": "basic.output", - "data": { - "name": "2", - "range": "[3:0]", - "size": 4 + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 640, - "y": 208 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 96, - "y": 224 + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" + }, + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "type": "basic.output", + "data": { + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { "x": 608, - "y": 312 + "y": 176 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 + }, + "position": { + "x": 96, + "y": 208 + } + }, + { + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "type": "basic.output", "data": { "name": "0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, "position": { - "x": 552, - "y": 400 + "x": 608, + "y": 272 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ @@ -4632,25 +4945,15 @@ } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "o0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ] } @@ -4661,7 +4964,7 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], @@ -4677,622 +4980,669 @@ }, "size": 16 }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" - }, - "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "port": "in" }, - "size": 4 + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "port": "o0" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-8bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-8bits: Adder of two operands of 8 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "3", + "name": "a1", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 16, + "y": -688 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "type": "basic.outputLabel", "data": { - "name": "2", + "name": "a1", "range": "[3:0]", - "clock": false, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 104, - "y": 184 + "x": 352, + "y": -664 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 720, - "y": 224 + "x": -312, + "y": -632 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 16, + "y": -616 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "c" }, "position": { - "x": 104, - "y": 312 + "x": 960, + "y": -608 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 + "x": 352, + "y": -584 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", + "data": { + "name": "s", + "range": "[7:0]", + "size": 8 }, - "size": 4 + "position": { + "x": 960, + "y": -544 + } }, { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, - "size": 4 + "position": { + "x": 184, + "y": -472 + } }, { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 + "position": { + "x": 8, + "y": -440 + } }, { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "type": "basic.outputLabel", "data": { - "name": "c" + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 624, - "y": -168 + "x": 184, + "y": -408 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "id": "63477487-9493-4058-a7e1-9bab443ec466", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", + "range": "[7:0]", "clock": false, - "size": 16 + "size": 8 }, "position": { - "x": 280, - "y": -152 + "x": -320, + "y": -384 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 624, - "y": -104 + "x": 8, + "y": -368 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", - "data": { - "name": "", - "value": "1", - "local": true - }, + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -256 + "x": -168, + "y": -384 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -152 + "x": -152, + "y": -632 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, "height": 64 } + }, + { + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } } ], "wires": [ { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" - } + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "port": "inlabel" }, - "size": 16 + "size": 4 }, { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" }, - "position": { - "x": 624, - "y": -168 - } + "size": 4 }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "source": { + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "port": "outlabel" }, - "position": { - "x": 624, - "y": -96 - } - }, - { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 232, - "y": -56 - } + "size": 4 }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, - "position": { - "x": 232, - "y": -272 - } + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 + "source": { + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", - "position": { - "x": 456, - "y": -152 + "source": { + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "63477487-9493-4058-a7e1-9bab443ec466", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "port": "out" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, - "size": 16 + "size": 4 }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 16 + "size": 4 }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", "port": "in" }, - "size": 16 - } + "size": 8 + }, + { + "source": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + } ] } } }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Bus8-Split-half", + "version": "0.1", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", + "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": { "graph": { "blocks": [ { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "1", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 960, - "y": 248 + "x": 584, + "y": 104 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 728, - "y": 128 + "x": 120, + "y": 208 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "type": "basic.output", + "data": { + "name": "0", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 584, + "y": 232 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "params": [], "ports": { - "in": [], + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], "out": [ { - "name": "k", - "range": "[15:0]", - "size": 16 + "name": "o1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 } ] } }, "position": { - "x": 672, - "y": 248 + "x": 272, + "y": 176 }, "size": { - "width": 208, - "height": 64 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" - } + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", + "port": "in" + }, + "size": 4 }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" }, - "size": 16 + "size": 4 + }, + { + "source": { + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 8 } ] } } }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "Adder-16bits", + "name": "Adder-4bits", "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", + "description": "Adder-4bits: Adder of two operands of 4 bits", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -5301,74 +5651,37 @@ "graph": { "blocks": [ { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a3", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -664 + "y": -744 } }, { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[7:0]", "blockColor": "deeppink", - "size": 8 + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 352, - "y": -664 + "x": 576, + "y": -736 } }, { @@ -5378,280 +5691,293 @@ "name": "c" }, "position": { - "x": 960, - "y": -608 + "x": 920, + "y": -696 } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": -320, - "y": -608 + "x": 8, + "y": -688 } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", "type": "basic.inputLabel", "data": { - "name": "a0", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a1", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -592 + "y": -632 } }, { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 352, - "y": -584 + "x": -312, + "y": -632 } }, { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 960, - "y": -544 + "x": 456, + "y": -584 } }, { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a0", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { "x": 8, - "y": -472 + "y": -576 } }, { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -472 + "x": 456, + "y": -528 } }, { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "type": "basic.input", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -320, - "y": -424 + "x": -8, + "y": -448 } }, { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 328, + "y": -440 + } + }, + { + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[7:0]", + "blockColor": "fuchsia", + "name": "b2", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -408 + "x": -8, + "y": -384 } }, { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 184, - "y": -408 + "x": -312, + "y": -384 } }, { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 328, + "y": -376 } }, { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -608 + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 1064, + "y": -368 + } + }, + { + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": -16, + "y": -320 + } + }, + { + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -296 + } + }, + { + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -32, + "y": -264 + } + }, + { + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 + } + }, + { + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -5659,23 +5985,23 @@ } }, { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 352, - "y": -456 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 520, - "y": -600 + "x": 608, + "y": -544 }, "size": { "width": 96, @@ -5683,326 +6009,355 @@ } }, { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 760, - "y": -544 + "x": -168, + "y": -416 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" + } }, { "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "size": 16 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "size": 16 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" + } }, { "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "port": "in" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "size": 16 + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": 8 - } - ] - } - } - }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { - "package": { - "name": "Bus16-Split-half", - "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } + }, { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", - "data": { - "name": "1", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 608, - "y": 176 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 96, - "y": 208 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "type": "basic.output", - "data": { - "name": "0", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 608, - "y": 272 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 } + ] + }, + { + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 272, - "y": 176 + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ + "size": 4 + }, { "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "port": "in" }, - "size": 8 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" + } + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": 8 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } } ] } } }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { "package": { - "name": "Adder-8bits", + "name": "Adder-1bit", "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", + "description": "Adder-1bit: Adder of two operands of 1 bit", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -6011,267 +6366,348 @@ "graph": { "blocks": [ { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "type": "basic.inputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "", + "clock": false }, "position": { - "x": 16, - "y": -688 + "x": 280, + "y": -224 } }, { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "c" }, "position": { - "x": 352, - "y": -664 + "x": 616, + "y": -176 } }, { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 280, + "y": -152 } }, { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "type": "basic.inputLabel", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "s" }, "position": { - "x": 16, - "y": -616 + "x": 616, + "y": -96 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 456, + "y": -168 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 960, - "y": -608 + "x": 304, + "y": -64 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 352, - "y": -584 + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [ + { + "x": 400, + "y": -168 + } + ] + }, + { + "source": { + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "type": "basic.output", + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } + } + ] + } + } + }, + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { + "package": { + "name": "AdderC-1bit", + "version": "0.1", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 960, - "y": -544 + "x": 504, + "y": -208 } }, { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "a", + "clock": false }, "position": { - "x": 184, - "y": -472 + "x": 136, + "y": -192 } }, { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "blockColor": "fuchsia" + "virtual": true }, "position": { - "x": 8, - "y": -440 + "x": 272, + "y": -192 } }, { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 1112, + "y": -176 + } + }, + { + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "b" }, "position": { - "x": 184, - "y": -408 + "x": 504, + "y": -144 } }, { - "id": "63477487-9493-4058-a7e1-9bab443ec466", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "b", + "clock": false }, "position": { - "x": -320, - "y": -384 + "x": 136, + "y": -120 } }, { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -120 + } + }, + { + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": -96 + } + }, + { + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false + }, + "position": { + "x": 136, + "y": -40 + } + }, + { + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -368 + "x": 272, + "y": -40 } }, { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, "position": { - "x": -168, - "y": -384 + "x": 480, + "y": 24 + } + }, + { + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 992, + "y": 56 + } + }, + { + "id": "edf4525b-edd8-40fa-b784-631b102fb907", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b" + }, + "position": { + "x": 480, + "y": 88 + } + }, + { + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": 120 + } + }, + { + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "position": { + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -6279,11 +6715,11 @@ } }, { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -632 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -6291,11 +6727,11 @@ } }, { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 352, - "y": -456 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -6303,11 +6739,11 @@ } }, { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 760, - "y": -544 + "x": 632, + "y": -192 }, "size": { "width": 96, @@ -6315,435 +6751,381 @@ } }, { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 520, - "y": -600 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "port": "outlabel" }, "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } } ] } } }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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" + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 104 + "x": 112, + "y": 40 } }, { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "" }, "position": { - "x": 120, - "y": 208 + "x": 608, + "y": 72 } }, { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 232 + "x": 112, + "y": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", "type": "basic.code", "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", "params": [], "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "a" + }, + { + "name": "b" } ], "out": [ { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 + "name": "c" } ] } }, "position": { - "x": 272, - "y": 176 + "x": 256, + "y": 48 }, "size": { - "width": 240, - "height": 120 + "width": 312, + "height": 104 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } } ] } } }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "" }, "position": { - "x": 8, - "y": -744 + "x": 456, + "y": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "x": 168, + "y": 112 }, - "position": { - "x": 920, - "y": -696 + "size": { + "width": 248, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "source": { + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, - "position": { - "x": 8, - "y": -688 + "target": { + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } - }, + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "3" }, "position": { "x": 576, - "y": -672 + "y": 80 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "2" }, "position": { - "x": 8, - "y": -632 + "x": 600, + "y": 144 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", "type": "basic.input", "data": { "name": "", @@ -6752,785 +7134,709 @@ "size": 4 }, "position": { - "x": -312, - "y": -632 + "x": 128, + "y": 184 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "1" }, "position": { - "x": 456, - "y": -584 + "x": 592, + "y": 240 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "0" }, "position": { - "x": 8, - "y": -576 + "x": 568, + "y": 296 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": 456, - "y": -528 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": -312, - "y": -384 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" }, - "position": { - "x": 328, - "y": -376 - } - }, - { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "position": { - "x": 1064, - "y": -368 - } - }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "3", + "clock": false }, "position": { - "x": -16, - "y": -320 + "x": 80, + "y": 64 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "2", + "clock": false }, "position": { - "x": 184, - "y": -296 + "x": 80, + "y": 136 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -32, - "y": -264 + "x": 712, + "y": 200 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 184, - "y": -232 - } - }, - { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "name": "1", + "clock": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 608, - "y": -544 - }, - "size": { - "width": 96, - "height": 96 + "x": 80, + "y": 208 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": -152, - "y": -664 - }, - "size": { - "width": 96, - "height": 128 + "x": 80, + "y": 272 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 744, - "y": -688 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 344, + "height": 104 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" + }, + "vertices": [ + { + "x": 200, + "y": 176 + } + ] }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } - }, - { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "size": 4 + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 128, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 640, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 128, + "y": 224 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "position": { + "x": 296, + "y": 176 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 4 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 4 + } + ] + } + } + }, + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "package": { + "name": "AdderC-4bits", + "version": "0.1", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -744 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -736 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 920, + "y": -696 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 8, + "y": -688 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -672 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 8, + "y": -632 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": 4 + "position": { + "x": -312, + "y": -632 + } }, { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 456, + "y": -584 + } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "position": { + "x": 8, + "y": -576 + } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": 456, + "y": -528 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": -8, + "y": -448 } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -224 + "x": 328, + "y": -440 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": -176 + "x": -8, + "y": -384 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 280, - "y": -152 + "x": -312, + "y": -384 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", "data": { - "name": "s" + "blockColor": "fuchsia", + "name": "b1" }, "position": { - "x": 616, - "y": -96 - } - }, - { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 456, - "y": -168 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", - "position": { - "x": 304, - "y": -64 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] - }, - { - "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 504, - "y": -208 + "x": 328, + "y": -376 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", "data": { - "name": "a", - "clock": false + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 136, - "y": -192 + "x": 1064, + "y": -368 } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "id": "527c9113-e440-454b-b427-182b646c10f5", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "a", + "name": "b1", "pins": [ { "index": "0", @@ -7541,51 +7847,29 @@ "virtual": true }, "position": { - "x": 272, - "y": -192 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 1112, - "y": -176 + "x": -16, + "y": -320 } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 504, - "y": -144 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 136, - "y": -120 + "x": 184, + "y": -296 } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", + "id": "b652825e-10ba-47cc-9832-e39d73586234", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b", + "name": "b0", "pins": [ { "index": "0", @@ -7593,1767 +7877,1594 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 272, - "y": -120 + "x": -32, + "y": -264 } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "ci", + "blockColor": "fuchsia", + "name": "b0", "oldBlockColor": "fuchsia" }, "position": { - "x": 648, - "y": -96 + "x": 184, + "y": -232 } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", "type": "basic.input", "data": { "name": "ci", "clock": false }, "position": { - "x": 136, - "y": -40 + "x": -296, + "y": -168 } }, { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 272, - "y": -40 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 480, - "y": 24 + "x": 608, + "y": -544 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 992, - "y": 56 + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 480, - "y": 88 - } - }, - { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 648, - "y": 120 - } - }, - { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 832, - "y": 56 + "x": -152, + "y": -664 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 808, - "y": -80 + "x": 896, + "y": -400 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 632, - "y": -192 + "x": 744, + "y": -688 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 960, - "y": -176 + "x": 320, + "y": -248 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" } }, { "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" } }, { "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" + }, + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, + { + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { - "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 120, - "y": 48 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 560, - "y": 72 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 120, - "y": 104 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 272, - "height": 112 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - } - ], - "wires": [ + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" - } + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "position": { - "x": 112, - "y": 40 - } + "size": 4 }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 608, - "y": 72 - } - }, - { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" }, - "position": { - "x": 112, - "y": 96 - } + "size": 4 }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 256, - "y": 48 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" }, - "size": { - "width": 312, - "height": 104 - } - } - ], - "wires": [ + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" }, "position": { - "x": 456, - "y": 120 + "x": -64, + "y": -648 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "type": "basic.input", "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 168, - "y": 112 - }, - "size": { - "width": 248, - "height": 80 - } - } - ], - "wires": [ - { - "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" - }, - "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" + "x": -408, + "y": -584 } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", - "type": "basic.input", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 128, - "y": 168 + "x": -64, + "y": -568 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "name": "c" }, "position": { - "x": 640, - "y": 200 + "x": 832, + "y": -480 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "type": "basic.input", + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", "data": { - "name": "0", + "name": "a1", "range": "[3:0]", - "clock": false, + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 128, - "y": 224 + "x": 248, + "y": -456 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - } + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": -80, + "y": -448 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "port": "in" - }, - "size": 8 }, { - "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", + "data": { + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "size": 4 + "position": { + "x": -400, + "y": -392 + } }, { - "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - }, - "size": 4 - } - ] - } - } - }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { - "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "type": "basic.inputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", + "name": "b0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "deeppink" + "blockColor": "fuchsia" }, "position": { - "x": 8, - "y": -744 + "x": -80, + "y": -376 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 576, - "y": -736 + "x": 248, + "y": -376 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", "type": "basic.output", "data": { - "name": "c" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 920, - "y": -696 + "x": 840, + "y": -336 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", "data": { + "name": "a0", + "range": "[3:0]", "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "size": 4 }, "position": { - "x": 8, - "y": -688 + "x": 120, + "y": -304 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", "type": "basic.outputLabel", "data": { + "name": "b0", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 576, - "y": -672 + "x": 120, + "y": -232 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "ci", + "clock": false }, "position": { - "x": 8, - "y": -632 + "x": -392, + "y": -168 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": -312, - "y": -632 + "x": -248, + "y": -392 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" - }, + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, + "x": -240, "y": -584 - } - }, - { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" }, - "position": { - "x": 8, - "y": -576 + "size": { + "width": 96, + "height": 64 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" - }, + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 456, - "y": -528 - } - }, - { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "x": 688, + "y": -336 }, - "position": { - "x": -8, - "y": -448 + "size": { + "width": 96, + "height": 64 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" - }, + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 328, - "y": -440 + "x": 320, + "y": -248 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": -8, - "y": -384 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": -312, - "y": -384 - } + "target": { + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "port": "inlabel" + }, + "size": 4 }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": 328, - "y": -376 - } + "target": { + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": 1064, - "y": -368 - } + "target": { + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "port": "inlabel" + }, + "size": 4 }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": -16, - "y": -320 - } - }, - { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" }, - "position": { - "x": 184, - "y": -296 - } + "size": 4 }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "port": "outlabel" }, - "position": { - "x": -32, - "y": -264 - } - }, - { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 184, - "y": -232 - } + "size": 4 }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false + "source": { + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" }, - "position": { - "x": -296, - "y": -168 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 96 - } + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "source": { + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "size": 4 }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 + "source": { + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 744, - "y": -688 + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, - { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] + } + ] + } + } + }, + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "package": { + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 120, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 632, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "type": "basic.input", + "data": { + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 120, + "y": 264 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "i0", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 296, + "y": 176 + }, + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "port": "out" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] - }, + "size": 8 + } + ] + } + } + }, + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { + "package": { + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 920, + "y": -24 } }, { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 920, + "y": 56 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 368, + "y": 64 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", + "data": { + "name": "rst", + "clock": false }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 376, + "y": 200 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 920, + "y": 200 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 376, + "y": 336 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 656, + "y": -80 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 528, + "y": 32 }, - "size": 4 - }, + "size": { + "width": 344, + "height": 400 + } + } + ], + "wires": [ { "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" }, "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", "port": "in" }, - "size": 4 + "vertices": [], + "size": 16 }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "vertices": [] }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" } }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" + }, + "size": 16 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", "port": "out" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" } } ] } } }, - "c3c498191b14e9288a85fa2871b3966665f75475": { + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "name": "nc" }, "position": { - "x": -64, - "y": -648 + "x": 384, + "y": -80 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": true }, "position": { - "x": -408, - "y": -584 + "x": -136, + "y": -16 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "type": "basic.inputLabel", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "name": "" }, "position": { - "x": -64, - "y": -568 + "x": 384, + "y": 56 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", "data": { - "name": "c" + "name": "", + "clock": false }, "position": { - "x": 832, - "y": -480 + "x": -136, + "y": 128 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "type": "basic.outputLabel", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 248, - "y": -456 + "x": 32, + "y": -56 + }, + "size": { + "width": 296, + "height": 288 + } + } + ], + "wires": [ + { + "source": { + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" } }, { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" }, - "position": { - "x": -80, - "y": -448 + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" + }, + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", + "clock": true + }, + "position": { + "x": 216, + "y": -40 + } + }, + { + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 368, + "y": -40 + } + }, + { + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", + "data": { + "name": "data", + "range": "[15:0]", "clock": false, - "size": 8 + "size": 16 }, "position": { - "x": -400, - "y": -392 + "x": 200, + "y": 128 } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -80, - "y": -376 + "x": 344, + "y": 128 } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "size": 4 + "size": 16 }, "position": { - "x": 248, - "y": -376 + "x": 560, + "y": 128 } }, { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", "type": "basic.output", "data": { - "name": "s", + "name": "LED", "range": "[7:0]", "size": 8 }, "position": { - "x": 840, - "y": -336 + "x": 1136, + "y": 144 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -304 + "x": 600, + "y": 240 } }, { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" + }, + "position": { + "x": 1208, + "y": 296 + } + }, + { + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "ticsel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -232 + "x": 600, + "y": 312 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "ci", + "name": "sel", "clock": false }, "position": { - "x": -392, - "y": -168 + "x": 200, + "y": 320 } }, { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" + }, "position": { - "x": -248, - "y": -392 + "x": 344, + "y": 320 + } + }, + { + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", + "data": { + "name": "b0" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 1216, + "y": 376 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": -240, - "y": -584 + "x": 1064, + "y": 376 }, "size": { "width": 96, @@ -9361,23 +9472,27 @@ } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true + }, "position": { - "x": 688, - "y": -336 + "x": 1344, + "y": 376 }, "size": { - "width": 96, - "height": 64 + "width": 184, + "height": 56 } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 320, - "y": -248 + "x": 952, + "y": 128 }, "size": { "width": 96, @@ -9385,1224 +9500,1175 @@ } }, { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 464, - "y": -392 + "x": 720, + "y": 128 }, "size": { "width": 96, - "height": 96 + "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "port": "inlabel" + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", + "position": { + "x": 744, + "y": 296 }, - "size": 4 - }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" }, - "size": 4 + "vertices": [] }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "port": "outlabel" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + } }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "port": "inlabel" }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], - "size": 4 + "size": 16 }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "block": "514effa0-6d57-4281-b479-22d05798dceb", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 }, - "size": 4 + "size": 16 }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], - "size": 4 - }, - { - "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "size": 8 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" - }, - "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" }, "size": 8 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "port": "in" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - }, - "vertices": [ - { - "x": 624, - "y": -392 - } - ] + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "d1a52ec25aee5e4823102a32325600666fe99e12": { "package": { - "name": "Bus16-Join-half", + "name": "8-bits-Mux-2-1", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "2-to-1 Multplexer (8-bit channels)", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 120, - "y": 168 + "x": 768, + "y": 192 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 632, - "y": 200 + "x": 552, + "y": 208 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "id": "520455a3-592c-4fd0-ade9-62d366c88919", "type": "basic.input", "data": { - "name": "0", + "name": "1", "range": "[7:0]", "clock": false, "size": 8 }, "position": { - "x": 120, + "x": 200, "y": 264 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } - }, - "position": { - "x": 296, - "y": 176 + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, - "size": { - "width": 272, - "height": 104 + "position": { + "x": 768, + "y": 264 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", + "data": { + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "size": 8 + "position": { + "x": 544, + "y": 280 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": 808, + "y": 416 + } + }, { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[7:0]", + "size": 8 }, "position": { - "x": 88, - "y": 152 + "x": 1336, + "y": 432 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": false + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, "position": { - "x": 88, - "y": 280 + "x": 584, + "y": 528 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "type": "basic.output", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 616, - "y": 352 + "x": 808, + "y": 552 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", + "type": "basic.input", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 + "x": 208, + "y": 592 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "type": "basic.inputLabel", "data": { - "info": "Input signal", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": 584, + "y": 608 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "type": "basic.outputLabel", "data": { - "info": "System clock", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 808, + "y": 616 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "info": "Current signal \nstate", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 808, + "y": 680 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "name": "sel", + "clock": false }, "position": { - "x": 328, - "y": 200 + "x": 392, + "y": 768 + } + }, + { + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 248, - "height": 48 + "position": { + "x": 552, + "y": 768 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", "type": "basic.info", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "info": "Channel B", "readonly": true }, "position": { - "x": 504, - "y": 264 + "x": 424, + "y": 512 }, "size": { - "width": 400, - "height": 72 + "width": 144, + "height": 32 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 480, - "y": 352 + "x": 968, + "y": 568 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", "type": "basic.info", "data": { - "info": "In any other case the output is 0", + "info": "Channel A", "readonly": true }, "position": { - "x": 520, - "y": 432 + "x": 424, + "y": 168 }, "size": { - "width": 296, - "height": 40 + "width": 144, + "height": 32 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 320, - "y": 264 + "x": 1152, + "y": 432 }, "size": { "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 376, + "y": 264 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "size": { + "width": 96, + "height": 64 } }, { - "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 392, + "y": 592 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 64 } }, + { + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", + "position": { + "x": 960, + "y": 248 + }, + "size": { + "width": 96, + "height": 96 + } + } + ], + "wires": [ { "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "port": "inlabel" } }, { "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, "vertices": [ { - "x": 264, - "y": 368 + "x": 928, + "y": 624 } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -256, - "y": -56 - } + ], + "size": 4 }, { - "id": "e226f910-14af-473d-956b-03559f466726", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "source": { + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" }, - "position": { - "x": -104, - "y": -56 - } - }, - { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "target": { + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "position": { - "x": 128, - "y": 32 - } + "size": 4 }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "source": { + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -56, - "y": 72 - } - }, - { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", - "data": { - "name": "" + "target": { + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" }, - "position": { - "x": 424, - "y": 128 - } + "size": 4 }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -64, - "y": 160 - } + "target": { + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" + }, + "size": 4 }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 104, - "y": 144 + "source": { + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 280, - "y": 128 + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" + }, + "size": 4 + }, { "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "e226f910-14af-473d-956b-03559f466726", + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", "port": "inlabel" - } + }, + "size": 4 }, { "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", "port": "outlabel" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "port": "out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "520455a3-592c-4fd0-ade9-62d366c88919", + "port": "out" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" - } - } - ] + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" + }, + "target": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + }, + "target": { + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "vertices": [ + { + "x": 1088, + "y": 360 + } + ], + "size": 4 + } + ] } } }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "name": "4-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (4-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 824, - "y": 304 + "x": 712, + "y": -72 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 376, - "y": 320 + "x": 712, + "y": 0 } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "not", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 520, - "y": 160 + "x": 712, + "y": 72 } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 632, - "y": 392 - }, - "size": { - "width": 336, - "height": 96 + "x": 712, + "y": 160 } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 8 - }, - "size": { - "width": 296, - "height": 144 + "x": 432, + "y": 160 } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", "position": { - "x": 520, - "y": 256 - }, - "size": { - "width": 96, - "height": 64 + "x": 440, + "y": 224 } - } - ], - "wires": [ - { - "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" - }, - "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - }, - "vertices": [] }, { - "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 712, + "y": 232 } }, { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": 120, + "y": 240 } }, { - "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 960, - "y": 248 + "x": 432, + "y": 296 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 128 + "x": 712, + "y": 304 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", "data": { - "code": "assign k = VALUE;", - "params": [ + "blockColor": "fuchsia", + "name": "A0", + "pins": [ { - "name": "VALUE" + "index": "0", + "name": "NULL", + "value": "NULL" } ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 672, - "y": 248 - }, - "size": { - "width": 208, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" - }, - "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "x": 416, + "y": 360 } }, { - "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A1", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "port": "in" + "position": { + "x": 712, + "y": 400 } - } - ] - } - } - }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { - "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[3:0]", + "size": 4 }, "position": { - "x": 216, - "y": -40 + "x": 1256, + "y": 416 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "turquoise", + "name": "B3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 368, - "y": -40 + "x": 456, + "y": 464 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "type": "basic.input", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", + "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 200, - "y": 128 + "x": 712, + "y": 488 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "turquoise", + "name": "B2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 344, - "y": 128 + "x": 464, + "y": 528 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 120, + "y": 544 + } + }, + { + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": 712, + "y": 560 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", "data": { - "name": "LED", - "range": "[7:0]", - "size": 8 + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1136, - "y": 144 + "x": 464, + "y": 592 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "A0" }, "position": { - "x": 600, - "y": 240 + "x": 720, + "y": 648 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", "data": { - "name": "byte" + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1208, - "y": 296 + "x": 432, + "y": 648 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "turquoise", + "name": "B0", "oldBlockColor": "fuchsia" }, "position": { - "x": 600, - "y": 312 + "x": 720, + "y": 720 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { "name": "sel", "clock": false }, "position": { - "x": 200, - "y": 320 + "x": 104, + "y": 728 } }, { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "navy", + "name": "sel", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 344, - "y": 320 + "x": 264, + "y": 728 } }, { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "name": "b0" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1216, - "y": 376 + "x": 712, + "y": 800 } }, { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 1064, - "y": 376 + "x": 856, + "y": 472 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 864, + "y": 704 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", "type": "basic.info", "data": { - "info": "Byte 0 \n(least significant) ", + "info": "Channel A", "readonly": true }, "position": { - "x": 1344, - "y": 376 + "x": 304, + "y": 128 }, "size": { - "width": 184, - "height": 56 + "width": 144, + "height": 32 } }, { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", + "data": { + "info": "Channel B", + "readonly": true + }, "position": { - "x": 744, - "y": 296 + "x": 304, + "y": 480 + }, + "size": { + "width": 144, + "height": 32 + } + }, + { + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 216 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 952, - "y": 128 + "x": 1040, + "y": 384 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": -16 }, "size": { "width": 96, @@ -10610,3229 +10676,759 @@ } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 720, - "y": 128 + "x": 288, + "y": 512 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 280, + "y": 208 + }, + "size": { + "width": 96, + "height": 128 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" + } + }, + { + "source": { + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", "port": "inlabel" } }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "port": "inlabel" } }, { "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", "port": "inlabel" + } + }, + { + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "size": 16 + "target": { + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "port": "inlabel" + } }, { "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "port": "outlabel" }, "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 - }, - "size": 16 + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "port": "outlabel" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, - "size": 8 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + } }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - } - ] - } - } - }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { - "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 232, - "y": -112 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 - } - }, - { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 880, - "y": 16 - } - }, - { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 32 + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "size": { - "width": 96, - "height": 64 - } + "vertices": [] }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", - "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", "port": "outlabel" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" - } + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "port": "inlabel" } }, { "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", + "port": "inlabel" } }, { "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" - } + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + }, + "vertices": [ + { + "x": 984, + "y": 472 + } + ] }, { "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" }, - "vertices": [] + "vertices": [ + { + "x": 976, + "y": 352 + } + ] }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", "port": "in" - } + }, + "size": 4 }, { "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } - } - ] - } - } - }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { - "package": { - "name": "1-bit-reg", - "version": "0.1", - "description": "Reg: 1-Bit register", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": 440 - } - }, - { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 224, - "y": 440 - } - }, - { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", - "clock": false - }, - "position": { - "x": 80, - "y": 552 - } - }, - { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 1152, - "y": 592 - } - }, - { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" - }, - "position": { - "x": 232, - "y": 632 - } - }, - { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "type": "basic.input", - "data": { - "name": "load", - "clock": false - }, - "position": { - "x": 80, - "y": 632 - } - }, - { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "type": "basic.outputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 688 - } - }, - { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 784, - "y": 504 - } - }, - { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, - "position": { - "x": 640, - "y": 712 - }, - "size": { - "width": 104, - "height": 40 - } - }, - { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, - "position": { - "x": 776, - "y": 680 - }, - "size": { - "width": 120, - "height": 48 - } - }, - { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", - "position": { - "x": 616, - "y": 600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 784, - "y": 600 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" - }, - "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", - "port": "inlabel" - } - }, - { - "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "port": "out" - }, - "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", - "port": "inlabel" - } - }, - { - "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] - }, - { - "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - }, - "vertices": [] - }, - { - "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { - "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 144, - "y": 504 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - } - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 456, - "y": 360 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1096, - "y": 392 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 136, - "y": 416 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": 416 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": 528 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 136, - "y": 528 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 616, - "y": 552 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 376, - "y": 656 - } - }, - { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 952, - "y": 392 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 600, - "y": 376 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 624, - "y": 656 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 784, - "y": 568 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - }, - "vertices": [] - }, - { - "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - } - ] - } - } - }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { - "package": { - "name": "8-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "type": "basic.outputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 768, - "y": 192 - } - }, - { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "type": "basic.inputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 552, - "y": 208 - } - }, - { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", - "type": "basic.input", - "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 200, - "y": 264 - } - }, - { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "type": "basic.outputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 768, - "y": 264 - } - }, - { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "type": "basic.inputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 544, - "y": 280 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 416 - } - }, - { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 1336, - "y": 432 - } - }, - { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "blockColor": "lightseagreen", - "size": 4 - }, - "position": { - "x": 584, - "y": 528 - } - }, - { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "type": "basic.outputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 808, - "y": 552 - } - }, - { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", - "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 208, - "y": 592 - } - }, - { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "type": "basic.inputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 584, - "y": 608 - } - }, - { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "type": "basic.outputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 808, - "y": 616 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 680 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 392, - "y": 768 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 552, - "y": 768 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 424, - "y": 512 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 968, - "y": 568 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 424, - "y": 168 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 1152, - "y": 432 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 376, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 392, - "y": 592 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 960, - "y": 248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 - }, - { - "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" - }, - "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" - }, - "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "vertices": [ - { - "x": 1088, - "y": 360 - } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } - }, - { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 0 - } - }, - { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 72 - } - }, - { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 160 - } - }, - { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 - } - }, - { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 440, - "y": 224 - } - }, - { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 232 - } - }, - { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 240 - } - }, - { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 432, - "y": 296 - } - }, - { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 304 - } - }, - { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 360 - } - }, - { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 400 - } - }, - { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1256, - "y": 416 - } - }, - { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 456, - "y": 464 - } - }, - { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 488 - } - }, - { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 464, - "y": 528 - } - }, - { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 560 - } - }, - { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 592 - } - }, - { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0" - }, - "position": { - "x": 720, - "y": 648 - } - }, - { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 720, - "y": 720 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 104, - "y": 728 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 264, - "y": 728 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 800 - } - }, - { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 216 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 1040, - "y": 384 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": -16 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 288, - "y": 512 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 280, - "y": 208 - }, - "size": { - "width": 96, - "height": 128 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } - }, - { - "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" - } - }, - { - "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] - }, - { - "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] - }, - { - "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" - }, - "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" - }, - "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - } - ] - } - } - }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { - "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 496, - "y": 80 - } - }, - { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "type": "basic.input", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": -16, - "y": 80 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", - "data": { - "info": "Input", - "readonly": true - }, - "position": { - "x": 24, - "y": 56 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 512, - "y": 48 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" - }, - "position": { - "x": 176, - "y": 64 - }, - "size": { - "width": 232, - "height": 96 + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } - } - ], - "wires": [ + }, { "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" }, "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 }, { "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", "port": "out" }, "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 } ] } } }, - "5a638807b588f70809fd8c0f9c7b2149e68abe80": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "UINT16-10bit-verilog", + "name": "Mux-2-1", "version": "0.1", - "description": "UINT32-10bit-verilog: Extend a 10-bit unsigned integer to 32-bits. Verilog implementation ", + "description": "2-to-1 Multplexer (1-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, + "position": { + "x": 456, + "y": 360 + } + }, + { + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", "type": "basic.output", "data": { - "name": "", - "virtual": true, - "range": "[15:0]", + "name": "" + }, + "position": { + "x": 1096, + "y": 392 + } + }, + { + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "1", + "clock": false + }, + "position": { + "x": 136, + "y": 416 + } + }, + { + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" } - ] + ], + "virtual": true }, "position": { - "x": 920, - "y": 304 + "x": 272, + "y": 416 } }, { - "id": "1fb8912c-d7eb-48e6-97b0-55e4e0583970", - "type": "basic.input", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "type": "basic.inputLabel", "data": { - "name": "i", - "virtual": true, - "range": "[9:0]", + "blockColor": "fuchsia", + "name": "b", "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" } ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 272, + "y": 528 + } + }, + { + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "type": "basic.input", + "data": { + "name": "0", + "clock": false + }, + "position": { + "x": 136, + "y": 528 + } + }, + { + "id": "8d94a294-a698-43c5-9777-874fd39b8586", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 616, + "y": 552 + } + }, + { + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", + "data": { + "name": "sel", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 376, + "y": 656 + } + }, + { + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "position": { + "x": 952, + "y": 392 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 600, + "y": 376 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[9:0]", - "size": 10 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 10;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "position": { + "x": 624, + "y": 656 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 512, - "y": 272 + "x": 784, + "y": 568 }, "size": { - "width": 344, - "height": 120 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "port": "outlabel" + }, + "target": { + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "port": "outlabel" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" + }, + "target": { + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "port": "inlabel" + } + }, + { + "source": { + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "port": "out" + }, + "target": { + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "port": "inlabel" + } + }, + { + "source": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", "port": "in" }, - "size": 16 + "vertices": [] + }, + { + "source": { + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] }, { "source": { - "block": "1fb8912c-d7eb-48e6-97b0-55e4e0583970", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "size": 10 + "vertices": [] + }, + { + "source": { + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" + }, + "target": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] } ] } } }, - "92c157aacfe690101ce5bd388a4a75197805bd3e": { + "b7f7136a87c607769a64233fd99bc12818a05746": { "package": { - "name": "Copy-10-verilog", - "version": "0.2", - "description": "Copy-10: Copy the input wire twice and generate a 10 bits Bus output (Verilog implementation)", + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "clock": false + "clock": true }, "position": { - "x": 448, - "y": 176 + "x": 328, + "y": -80 } }, { - "id": "3e95f817-b03b-454c-8616-72fdc16001bf", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 + } + }, + { + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "type": "basic.input", "data": { "name": "", - "range": "[9:0]", - "size": 10 + "clock": false }, "position": { - "x": 992, - "y": 176 + "x": 320, + "y": 64 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i" + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[9:0]", - "size": 10 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N=10;\n\nassign o = {N{i}};\n" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 632, - "y": 144 + "x": 496, + "y": -120 }, "size": { - "width": 288, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" + }, + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "port": "out" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" } }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "port": "out" }, "target": { - "block": "3e95f817-b03b-454c-8616-72fdc16001bf", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 10 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } diff --git a/examples/TESTs/Uint/Uint16/11-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/11-bits/Alhambra-II/01-Manual-testing.ice index 0d0455e3..09f133c8 100644 --- a/examples/TESTs/Uint/Uint16/11-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/11-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-11bit Manual testing", + "info": "## 11-Uint16 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,23 +154,23 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "bb246443-9fda-4a3d-90f0-61997f2c2e39", + "type": "968f3a4ec6cf93abf2005d6a37a5a81d4208175c", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "05c55b26-138e-42d9-aa71-0528c8d94404", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 728, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -178,22 +178,22 @@ } }, { - "id": "14ac444a-abdb-4b01-bbc7-7ba7777e4b45", - "type": "0dcb171180dccc3edef2bc927d3d9479fa2257c9", + "id": "142fa87c-2570-40c0-80ff-784f32749d94", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 544, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "bb246443-9fda-4a3d-90f0-61997f2c2e39", - "type": "968f3a4ec6cf93abf2005d6a37a5a81d4208175c", + "id": "283892f5-57ef-43ee-88c3-1869d97a92a4", + "type": "811f62c41840b660992760fc93d06f01b74d6f10", "position": { - "x": 344, + "x": 544, "y": 56 }, "size": { @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "142fa87c-2570-40c0-80ff-784f32749d94", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "142fa87c-2570-40c0-80ff-784f32749d94", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "05c55b26-138e-42d9-aa71-0528c8d94404", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "05c55b26-138e-42d9-aa71-0528c8d94404", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "142fa87c-2570-40c0-80ff-784f32749d94", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "142fa87c-2570-40c0-80ff-784f32749d94", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "14ac444a-abdb-4b01-bbc7-7ba7777e4b45", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "283892f5-57ef-43ee-88c3-1869d97a92a4", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "88b7d181-a04b-4784-81d1-ab2e4107beeb" }, "target": { - "block": "14ac444a-abdb-4b01-bbc7-7ba7777e4b45", - "port": "86d0c863-64a6-4450-80e4-d00a0ceec5b4" + "block": "283892f5-57ef-43ee-88c3-1869d97a92a4", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 11 } @@ -291,63 +291,450 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" + }, + "position": { + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 + } + } + ], + "wires": [ + { + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" + }, + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" + }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "968f3a4ec6cf93abf2005d6a37a5a81d4208175c": { + "package": { + "name": "Copy-11-verilog", + "version": "0.2", + "description": "Copy-11: Copy the input wire twice and generate a 11 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 448, + "y": 176 + } + }, + { + "id": "88b7d181-a04b-4784-81d1-ab2e4107beeb", + "type": "basic.output", + "data": { + "name": "", + "range": "[10:0]", + "size": 11 + }, + "position": { + "x": 992, + "y": 176 + } + }, + { + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[10:0]", + "size": 11 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=11;\n\nassign o = {N{i}};\n" + }, + "position": { + "x": 632, + "y": 144 + }, + "size": { + "width": 288, + "height": 120 + } + } + ], + "wires": [ + { + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" + }, + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" + } + }, + { + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" + }, + "target": { + "block": "88b7d181-a04b-4784-81d1-ab2e4107beeb", + "port": "in" + }, + "size": 11 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 } }, { @@ -370,8 +757,8 @@ "name": "Press" }, "position": { - "x": 1024, - "y": 168 + "x": 1032, + "y": 184 } }, { @@ -509,8 +896,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +908,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +938,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +954,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +964,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +980,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1005,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1015,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1023,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1046,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -795,11 +1193,11 @@ } }, { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "70cfa680-3def-482c-b194-054c1f522357", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 320, - "y": 264 + "x": 552, + "y": 280 }, "size": { "width": 96, @@ -807,11 +1205,11 @@ } }, { - "id": "70cfa680-3def-482c-b194-054c1f522357", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 552, - "y": 264 + "x": 696, + "y": 400 }, "size": { "width": 96, @@ -819,11 +1217,11 @@ } }, { - "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 696, - "y": 400 + "x": 320, + "y": 264 }, "size": { "width": 96, @@ -838,7 +1236,7 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1246,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,229 +1294,9 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { + "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { - "name": "DFF", - "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 208, - "y": 160 - } - }, - { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 816, - "y": 224 - } - }, - { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 208, - "y": 304 - } - }, - { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, - "3676a00f3a70e406487ed14b901daf3e4984e63d": { - "package": { - "name": "NOT", + "name": "NOT", "version": "2.0", "description": "NOT gate (Verilog implementation)", "author": "Jesús Arroyo, Juan González", @@ -1346,53 +1524,292 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "" }, "position": { - "x": 280, + "x": 816, "y": 232 } }, { - "id": "626e14a3-68ca-440d-b469-aeb6a69bddcb", - "type": "basic.outputLabel", + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ + { + "name": "INI" + } + ], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": 232 + } + }, + { + "id": "626e14a3-68ca-440d-b469-aeb6a69bddcb", + "type": "basic.outputLabel", "data": { "blockColor": "yellow", "name": "clk", @@ -1412,8 +1829,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1841,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1878,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +1934,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +1950,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +1959,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +1971,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +1983,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2013,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2023,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2033,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2055,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2083,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,682 +2268,493 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" - }, + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 + }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -376, - "y": -656 - } - }, - { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -224, - "y": -656 - } - }, - { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 952, - "y": -600 - } - }, - { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, - "position": { - "x": 816, - "y": -600 + "x": 824, + "y": 304 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", "clock": false }, "position": { - "x": -376, - "y": -584 + "x": 376, + "y": 320 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "not", + "value": "0", + "local": false }, "position": { - "x": -224, - "y": -584 + "x": 520, + "y": 160 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 552, - "y": -440 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": 840, - "y": -352 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": 536, - "y": -352 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": -288 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 120, - "y": -232 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 120, - "y": -160 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", - "position": { - "x": 704, - "y": -368 + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "info": "Edge detector", - "readonly": true + "name": "" }, "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 + "x": 960, + "y": 248 } }, { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": 376, - "y": -120 - }, - "size": { - "width": 288, - "height": 56 + "x": 728, + "y": 128 } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } }, "position": { - "x": 720, - "y": -456 + "x": 672, + "y": 248 }, "size": { - "width": 304, - "height": 72 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", - "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true - }, - "position": { - "x": 432, - "y": -640 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 360, - "height": 120 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", - "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true - }, - "position": { - "x": -8, - "y": -648 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 312, - "height": 128 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 48 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "Counter", - "readonly": true + "name": "" }, "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 + "x": 560, + "y": 72 } }, { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", + "data": { + "name": "" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 120, + "y": 104 } }, { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", + "data": { + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } + }, "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" - } - }, - { - "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" - } - }, - { - "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "block": "97b51945-d716-4b6c-9db9-970d08541249", "port": "out" }, "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" - } - }, - { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" - } - }, - { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, - { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } - }, - { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" - }, - "vertices": [] - }, - { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" - } } ] } } }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": 104 + "x": -376, + "y": -656 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 216, - "y": 192 + "x": -224, + "y": -656 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 728, - "y": 192 + "x": 952, + "y": -600 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "out" }, "position": { - "x": 240, - "y": 320 + "x": 816, + "y": -600 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "clock": false }, "position": { - "x": 472, - "y": 56 + "x": -376, + "y": -584 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "blockColor": "fuchsia", + "name": "in" }, "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 272, - "height": 104 + "x": -224, + "y": -584 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", - "type": "basic.info", + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", "data": { - "info": "Initial value", - "readonly": true + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 480, - "y": 48 - }, - "size": { - "width": 136, - "height": 32 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "x": 552, + "y": -440 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 840, + "y": -352 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" - } - } - ] - } - } - }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { - "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": -120 + "x": 536, + "y": -352 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { "blockColor": "yellow", "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "oldBlockColor": "fuchsia" }, "position": { - "x": 368, - "y": -120 + "x": 384, + "y": -288 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2534,194 +2762,153 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 384, - "y": -32 + "x": 112, + "y": -248 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "type": "basic.outputLabel", "data": { - "name": "q", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1040, - "y": -32 + "x": 112, + "y": -176 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Edge detector", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "name": "max" + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 368, + "y": -88 + }, + "size": { + "width": 288, + "height": 56 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", + "readonly": true }, "position": { - "x": 1048, - "y": 56 + "x": 720, + "y": -456 + }, + "size": { + "width": 304, + "height": 72 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "Stable output", + "readonly": true }, "position": { - "x": 856, - "y": 144 + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true + }, + "position": { + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", "position": { - "x": 544, - "y": 40 + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 }, "size": { "width": 96, @@ -2729,11 +2916,11 @@ } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", "position": { - "x": 720, - "y": 160 + "x": 520, + "y": -192 }, "size": { "width": 96, @@ -2744,695 +2931,552 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", "port": "inlabel" - }, - "vertices": [] + } }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" }, "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } + }, + { + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" + }, + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" + } + }, + { + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "port": "outlabel" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "port": "in" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", "port": "inlabel" - }, - "size": 16 + } }, { "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", "port": "outlabel" }, "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } }, { "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" }, "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" }, - "vertices": [], - "size": 16 + "vertices": [] }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" - }, - "vertices": [ - { - "x": 840, - "y": 264 - } - ], - "size": 16 + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + } } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -136, - "y": -448 - } - }, - { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": -136, - "y": -376 + "x": 624, + "y": 120 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": -632, - "y": -264 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -480, - "y": -264 - } - }, - { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -216 + "x": 88, + "y": 152 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", "data": { - "name": "rst", + "name": "", "clock": false }, "position": { - "x": -624, - "y": -192 + "x": 88, + "y": 280 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "" }, "position": { - "x": -480, - "y": -192 + "x": 616, + "y": 352 } }, { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": -112, - "y": -144 - } - }, - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": -40 }, - "position": { - "x": -112, - "y": -8 + "size": { + "width": 648, + "height": 96 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Input signal", + "readonly": true }, "position": { - "x": -128, - "y": 72 - } - }, - { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "x": 96, + "y": 256 }, - "position": { - "x": 568, - "y": 104 + "size": { + "width": 136, + "height": 40 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "info": "System clock", + "readonly": true }, "position": { - "x": -576, - "y": 136 - } - }, - { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": 120 }, - "position": { - "x": -128, - "y": 248 + "size": { + "width": 96, + "height": 48 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, + "x": 160, "y": 352 }, "size": { - "width": 96, - "height": 96 + "width": 168, + "height": 48 } }, { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, "position": { - "x": 40, - "y": 104 + "x": 328, + "y": 200 }, "size": { - "width": 96, - "height": 96 + "width": 248, + "height": 48 } }, { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true + }, "position": { - "x": -400, - "y": 104 + "x": 504, + "y": 264 }, "size": { - "width": 96, - "height": 128 + "width": 400, + "height": 72 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": 72 + "x": 480, + "y": 352 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 48, - "y": -152 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 64, - "y": -360 + "x": 320, + "y": 264 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "block": "2708468d-1088-4570-be63-fb0d4799a941", "port": "out" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "port": "in" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": -8, - "y": 376 + "x": 264, + "y": 368 } ] - }, + } + ] + } + } + }, + "8a23ffd0491010ff595493182b82c722bd6902d7": { + "package": { + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 424 } }, { - "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "port": "outlabel" + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "d", + "clock": false }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 536 } }, { - "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "position": { + "x": 824, + "y": 536 } }, { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "type": "basic.input", + "data": { + "name": "load", + "clock": false }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 648 } }, { - "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", - "port": "outlabel" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] - }, - { - "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "port": "out" - }, - "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" - }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -272, - "y": 368 - } - ], - "size": 4 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 488, + "y": 280 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "position": { + "x": 320, + "y": 400 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 - }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" + } }, { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" - }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" - }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { "package": { - "name": "DFF-rst-x04", - "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 }, "design": { "graph": { "blocks": [ - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -160, - "y": -336 - } - }, - { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -168, - "y": -280 - } - }, { "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", @@ -3441,8 +3485,8 @@ "clock": true }, "position": { - "x": -496, - "y": -256 + "x": 216, + "y": -120 } }, { @@ -3461,12 +3505,12 @@ "virtual": true }, "position": { - "x": -344, - "y": -256 + "x": 368, + "y": -120 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -3474,200 +3518,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 112, - "y": -200 + "x": 384, + "y": -32 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "type": "basic.outputLabel", "data": { - "name": "rst", - "clock": false + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -488, - "y": -184 + "x": 1040, + "y": -32 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 112, - "y": -112 - } - }, - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 376, - "y": -8 - } - }, - { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 376, - "y": 80 + "x": 1216, + "y": -32 } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "max" }, "position": { - "x": 1032, - "y": 184 + "x": 1208, + "y": 56 } }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": 528, - "y": 208 + "x": 1048, + "y": 56 } }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" + "clock": false }, "position": { - "x": 520, - "y": 264 + "x": 216, + "y": 56 } }, { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 712, + "y": 88 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 856, + "y": 144 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 272, - "y": -128 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": -16, - "y": -296 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3689,762 +3739,865 @@ }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "port": "inlabel" + }, + "vertices": [] }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "port": "outlabel" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "size": 16 }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "size": 16 }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "port": "out" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } + "vertices": [], + "size": 16 }, { "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": 712, - "y": 128 + "x": 840, + "y": 264 } - ] - }, + ], + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 624, + "y": -168 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 280, + "y": -152 + } + }, + { + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": 624, + "y": -104 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 456, + "y": -256 } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", + "block": "12fb4602-d67f-4129-a777-f04945adf29d", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "size": 4 + "size": 16 }, { "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "size": 16 } ] } } }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "Bus4-Split-all", + "name": "AdderK-16bits", "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its wires", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "3" + "name": "c" }, "position": { - "x": 576, - "y": 80 + "x": 624, + "y": -168 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", "type": "basic.output", "data": { - "name": "2" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 600, - "y": 144 + "x": 624, + "y": -96 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": 128, - "y": 184 + "x": 232, + "y": -56 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "name": "1" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 592, - "y": 240 + "x": 232, + "y": -272 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 568, - "y": 296 + "x": 232, + "y": -168 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": 296, - "y": 176 + "x": 456, + "y": -152 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "84f0a15761ee8b753f67079819a7614923939472": { + "651fa32fcf52b534a766fdb2ba638a010338f268": { "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false - }, - "position": { - "x": 80, - "y": 64 - } - }, - { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false - }, - "position": { - "x": 80, - "y": 136 - } - }, - { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", "type": "basic.output", "data": { "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 712, - "y": 200 - } - }, - { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "type": "basic.input", - "data": { - "name": "1", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 80, - "y": 208 + "x": 960, + "y": 248 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "name": "0", - "clock": false + "name": "", + "value": "0", + "local": false }, "position": { - "x": 80, - "y": 272 + "x": 728, + "y": 128 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], "ports": { - "in": [ - { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" - } - ], + "in": [], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "k", + "range": "[15:0]", + "size": 16 } ] } }, "position": { - "x": 296, - "y": 176 + "x": 672, + "y": 248 }, "size": { - "width": 344, - "height": 104 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[7:0]", "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 8, + "y": -664 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 856, - "y": -56 + "x": 960, + "y": -608 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 200, - "y": -56 + "x": -320, + "y": -608 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": 80 + "x": 8, + "y": -592 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 536, - "y": -40 - }, - "size": { - "width": 96, - "height": 64 + "x": 8, + "y": -472 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", "data": { - "info": "Data input", - "readonly": true + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 216, - "y": 56 - }, - "size": { - "width": 104, - "height": 40 + "x": 184, + "y": -472 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", "data": { - "info": "System clock", - "readonly": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 208, - "y": -304 + "x": -320, + "y": -424 + } + }, + { + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 144, - "height": 40 + "position": { + "x": 8, + "y": -408 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 720, - "y": -200 + "x": 184, + "y": -408 + } + }, + { + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -424 }, "size": { - "width": 152, + "width": 96, "height": 64 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 712, - "y": -56 + "x": -168, + "y": -608 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, @@ -4455,173 +4608,235 @@ "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "port": "outlabel" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "port": "out" + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { - "package": { - "name": "Bus16-Split-quarter", - "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 }, - "position": { - "x": 608, - "y": 64 - } + "size": 8 }, { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "type": "basic.output", - "data": { - "name": "2", - "range": "[3:0]", - "size": 4 + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 640, - "y": 208 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 96, - "y": 224 + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" + }, + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "type": "basic.output", + "data": { + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { "x": 608, - "y": 312 + "y": 176 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 + }, + "position": { + "x": 96, + "y": 208 + } + }, + { + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "type": "basic.output", "data": { "name": "0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, "position": { - "x": 552, - "y": 400 + "x": 608, + "y": 272 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ @@ -4632,25 +4847,15 @@ } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "o0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ] } @@ -4661,7 +4866,7 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], @@ -4677,622 +4882,669 @@ }, "size": 16 }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" - }, - "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "port": "in" }, - "size": 4 + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "port": "o0" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-8bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-8bits: Adder of two operands of 8 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "3", + "name": "a1", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 16, + "y": -688 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "type": "basic.outputLabel", "data": { - "name": "2", + "name": "a1", "range": "[3:0]", - "clock": false, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 104, - "y": 184 + "x": 352, + "y": -664 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 720, - "y": 224 + "x": -312, + "y": -632 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 16, + "y": -616 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "c" }, "position": { - "x": 104, - "y": 312 + "x": 960, + "y": -608 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 + "x": 352, + "y": -584 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", + "data": { + "name": "s", + "range": "[7:0]", + "size": 8 }, - "size": 4 + "position": { + "x": 960, + "y": -544 + } }, { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, - "size": 4 + "position": { + "x": 184, + "y": -472 + } }, { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 + "position": { + "x": 8, + "y": -440 + } }, { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "type": "basic.outputLabel", "data": { - "name": "c" + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 624, - "y": -168 + "x": 184, + "y": -408 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "id": "63477487-9493-4058-a7e1-9bab443ec466", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", + "range": "[7:0]", "clock": false, - "size": 16 + "size": 8 }, "position": { - "x": 280, - "y": -152 + "x": -320, + "y": -384 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 624, - "y": -104 + "x": 8, + "y": -368 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", - "data": { - "name": "", - "value": "1", - "local": true - }, + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -256 + "x": -168, + "y": -384 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -152 + "x": -152, + "y": -632 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, "height": 64 } + }, + { + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } } ], "wires": [ { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" - } + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "port": "inlabel" }, - "size": 16 + "size": 4 }, { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" }, - "position": { - "x": 624, - "y": -168 - } + "size": 4 }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "source": { + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "port": "outlabel" }, - "position": { - "x": 624, - "y": -96 - } - }, - { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 232, - "y": -56 - } + "size": 4 }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, - "position": { - "x": 232, - "y": -272 - } + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 + "source": { + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", - "position": { - "x": 456, - "y": -152 + "source": { + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "63477487-9493-4058-a7e1-9bab443ec466", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "port": "out" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, - "size": 16 + "size": 4 }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 16 + "size": 4 }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", "port": "in" }, - "size": 16 - } + "size": 8 + }, + { + "source": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + } ] } } }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Bus8-Split-half", + "version": "0.1", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", + "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": { "graph": { "blocks": [ { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "1", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 960, - "y": 248 + "x": 584, + "y": 104 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 728, - "y": 128 + "x": 120, + "y": 208 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "type": "basic.output", + "data": { + "name": "0", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 584, + "y": 232 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "params": [], "ports": { - "in": [], + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], "out": [ { - "name": "k", - "range": "[15:0]", - "size": 16 + "name": "o1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 } ] } }, "position": { - "x": 672, - "y": 248 + "x": 272, + "y": 176 }, "size": { - "width": 208, - "height": 64 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" - } + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", + "port": "in" + }, + "size": 4 }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" }, - "size": 16 + "size": 4 + }, + { + "source": { + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 8 } ] } } }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "Adder-16bits", + "name": "Adder-4bits", "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", + "description": "Adder-4bits: Adder of two operands of 4 bits", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -5301,74 +5553,37 @@ "graph": { "blocks": [ { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a3", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -664 + "y": -744 } }, { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[7:0]", "blockColor": "deeppink", - "size": 8 + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 352, - "y": -664 + "x": 576, + "y": -736 } }, { @@ -5378,280 +5593,293 @@ "name": "c" }, "position": { - "x": 960, - "y": -608 + "x": 920, + "y": -696 } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": -320, - "y": -608 + "x": 8, + "y": -688 } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", "type": "basic.inputLabel", "data": { - "name": "a0", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a1", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -592 + "y": -632 } }, { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 352, - "y": -584 + "x": -312, + "y": -632 } }, { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 960, - "y": -544 + "x": 456, + "y": -584 } }, { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a0", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { "x": 8, - "y": -472 + "y": -576 } }, { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -472 + "x": 456, + "y": -528 } }, { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "type": "basic.input", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -320, - "y": -424 + "x": -8, + "y": -448 } }, { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 328, + "y": -440 + } + }, + { + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[7:0]", + "blockColor": "fuchsia", + "name": "b2", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -408 + "x": -8, + "y": -384 } }, { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 184, - "y": -408 + "x": -312, + "y": -384 } }, { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 328, + "y": -376 } }, { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -608 + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 1064, + "y": -368 + } + }, + { + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": -16, + "y": -320 + } + }, + { + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -296 + } + }, + { + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -32, + "y": -264 + } + }, + { + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 + } + }, + { + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -5659,23 +5887,23 @@ } }, { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 352, - "y": -456 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 520, - "y": -600 + "x": 608, + "y": -544 }, "size": { "width": 96, @@ -5683,326 +5911,355 @@ } }, { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 760, - "y": -544 + "x": -168, + "y": -416 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" + } }, { "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "size": 16 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "size": 16 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" + } }, { "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "port": "in" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "size": 16 + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": 8 - } - ] - } - } - }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { - "package": { - "name": "Bus16-Split-half", - "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } + }, { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", - "data": { - "name": "1", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 608, - "y": 176 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 96, - "y": 208 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "type": "basic.output", - "data": { - "name": "0", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 608, - "y": 272 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 } + ] + }, + { + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 272, - "y": 176 + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ + "size": 4 + }, { "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "port": "in" }, - "size": 8 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" + } + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": 8 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } } ] } } }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { "package": { - "name": "Adder-8bits", + "name": "Adder-1bit", "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", + "description": "Adder-1bit: Adder of two operands of 1 bit", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -6011,267 +6268,348 @@ "graph": { "blocks": [ { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "type": "basic.inputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "", + "clock": false }, "position": { - "x": 16, - "y": -688 + "x": 280, + "y": -224 } }, { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "c" }, "position": { - "x": 352, - "y": -664 + "x": 616, + "y": -176 } }, { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 280, + "y": -152 } }, { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "type": "basic.inputLabel", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "s" }, "position": { - "x": 16, - "y": -616 + "x": 616, + "y": -96 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 456, + "y": -168 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 960, - "y": -608 + "x": 304, + "y": -64 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 352, - "y": -584 + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [ + { + "x": 400, + "y": -168 + } + ] + }, + { + "source": { + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "type": "basic.output", + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } + } + ] + } + } + }, + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { + "package": { + "name": "AdderC-1bit", + "version": "0.1", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 960, - "y": -544 + "x": 504, + "y": -208 } }, { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "a", + "clock": false }, "position": { - "x": 184, - "y": -472 + "x": 136, + "y": -192 } }, { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "blockColor": "fuchsia" + "virtual": true }, "position": { - "x": 8, - "y": -440 + "x": 272, + "y": -192 } }, { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 1112, + "y": -176 + } + }, + { + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "b" }, "position": { - "x": 184, - "y": -408 + "x": 504, + "y": -144 } }, { - "id": "63477487-9493-4058-a7e1-9bab443ec466", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "b", + "clock": false }, "position": { - "x": -320, - "y": -384 + "x": 136, + "y": -120 } }, { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -120 + } + }, + { + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": -96 + } + }, + { + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false + }, + "position": { + "x": 136, + "y": -40 + } + }, + { + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -368 + "x": 272, + "y": -40 } }, { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, "position": { - "x": -168, - "y": -384 + "x": 480, + "y": 24 + } + }, + { + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 992, + "y": 56 + } + }, + { + "id": "edf4525b-edd8-40fa-b784-631b102fb907", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b" + }, + "position": { + "x": 480, + "y": 88 + } + }, + { + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": 120 + } + }, + { + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "position": { + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -6279,11 +6617,11 @@ } }, { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -632 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -6291,11 +6629,11 @@ } }, { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 352, - "y": -456 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -6303,11 +6641,11 @@ } }, { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 760, - "y": -544 + "x": 632, + "y": -192 }, "size": { "width": 96, @@ -6315,435 +6653,381 @@ } }, { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 520, - "y": -600 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "port": "outlabel" }, "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } } ] } } }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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" + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 104 + "x": 112, + "y": 40 } }, { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "" }, "position": { - "x": 120, - "y": 208 + "x": 608, + "y": 72 } }, { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 232 + "x": 112, + "y": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", "type": "basic.code", "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", "params": [], "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "a" + }, + { + "name": "b" } ], "out": [ { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 + "name": "c" } ] } }, "position": { - "x": 272, - "y": 176 + "x": 256, + "y": 48 }, "size": { - "width": 240, - "height": 120 + "width": 312, + "height": 104 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } } ] } } }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "" }, "position": { - "x": 8, - "y": -744 + "x": 456, + "y": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "x": 168, + "y": 112 }, - "position": { - "x": 920, - "y": -696 + "size": { + "width": 248, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "source": { + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, - "position": { - "x": 8, - "y": -688 + "target": { + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } - }, + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "3" }, "position": { "x": 576, - "y": -672 + "y": 80 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "2" }, "position": { - "x": 8, - "y": -632 + "x": 600, + "y": 144 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", "type": "basic.input", "data": { "name": "", @@ -6752,785 +7036,709 @@ "size": 4 }, "position": { - "x": -312, - "y": -632 + "x": 128, + "y": 184 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "1" }, "position": { - "x": 456, - "y": -584 + "x": 592, + "y": 240 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "0" }, "position": { - "x": 8, - "y": -576 + "x": 568, + "y": 296 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": 456, - "y": -528 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": -312, - "y": -384 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" }, - "position": { - "x": 328, - "y": -376 - } - }, - { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "position": { - "x": 1064, - "y": -368 - } - }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "3", + "clock": false }, "position": { - "x": -16, - "y": -320 + "x": 80, + "y": 64 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "2", + "clock": false }, "position": { - "x": 184, - "y": -296 + "x": 80, + "y": 136 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -32, - "y": -264 + "x": 712, + "y": 200 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 184, - "y": -232 - } - }, - { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "name": "1", + "clock": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 608, - "y": -544 - }, - "size": { - "width": 96, - "height": 96 + "x": 80, + "y": 208 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": -152, - "y": -664 - }, - "size": { - "width": 96, - "height": 128 + "x": 80, + "y": 272 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 744, - "y": -688 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 344, + "height": 104 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" + }, + "vertices": [ + { + "x": 200, + "y": 176 + } + ] }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } - }, - { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "size": 4 + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 128, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 640, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 128, + "y": 224 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "position": { + "x": 296, + "y": 176 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 4 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 4 + } + ] + } + } + }, + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "package": { + "name": "AdderC-4bits", + "version": "0.1", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -744 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -736 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 920, + "y": -696 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 8, + "y": -688 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -672 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 8, + "y": -632 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": 4 + "position": { + "x": -312, + "y": -632 + } }, { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 456, + "y": -584 + } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "position": { + "x": 8, + "y": -576 + } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": 456, + "y": -528 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": -8, + "y": -448 } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -224 + "x": 328, + "y": -440 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": -176 + "x": -8, + "y": -384 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 280, - "y": -152 + "x": -312, + "y": -384 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", "data": { - "name": "s" + "blockColor": "fuchsia", + "name": "b1" }, "position": { - "x": 616, - "y": -96 - } - }, - { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 456, - "y": -168 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", - "position": { - "x": 304, - "y": -64 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] - }, - { - "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 504, - "y": -208 + "x": 328, + "y": -376 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", "data": { - "name": "a", - "clock": false + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 136, - "y": -192 + "x": 1064, + "y": -368 } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "id": "527c9113-e440-454b-b427-182b646c10f5", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "a", + "name": "b1", "pins": [ { "index": "0", @@ -7541,51 +7749,29 @@ "virtual": true }, "position": { - "x": 272, - "y": -192 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 1112, - "y": -176 + "x": -16, + "y": -320 } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 504, - "y": -144 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 136, - "y": -120 + "x": 184, + "y": -296 } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", + "id": "b652825e-10ba-47cc-9832-e39d73586234", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b", + "name": "b0", "pins": [ { "index": "0", @@ -7593,1767 +7779,1594 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 272, - "y": -120 + "x": -32, + "y": -264 } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "ci", + "blockColor": "fuchsia", + "name": "b0", "oldBlockColor": "fuchsia" }, "position": { - "x": 648, - "y": -96 + "x": 184, + "y": -232 } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", "type": "basic.input", "data": { "name": "ci", "clock": false }, "position": { - "x": 136, - "y": -40 + "x": -296, + "y": -168 } }, { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 272, - "y": -40 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 480, - "y": 24 + "x": 608, + "y": -544 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 992, - "y": 56 + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 480, - "y": 88 - } - }, - { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 648, - "y": 120 - } - }, - { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 832, - "y": 56 + "x": -152, + "y": -664 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 808, - "y": -80 + "x": 896, + "y": -400 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 632, - "y": -192 + "x": 744, + "y": -688 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 960, - "y": -176 + "x": 320, + "y": -248 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" } }, { "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" } }, { "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" + }, + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, + { + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { - "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 120, - "y": 48 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 560, - "y": 72 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 120, - "y": 104 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 272, - "height": 112 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - } - ], - "wires": [ + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" - } + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "position": { - "x": 112, - "y": 40 - } + "size": 4 }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 608, - "y": 72 - } - }, - { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" }, - "position": { - "x": 112, - "y": 96 - } + "size": 4 }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 256, - "y": 48 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" }, - "size": { - "width": 312, - "height": 104 - } - } - ], - "wires": [ + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" }, "position": { - "x": 456, - "y": 120 + "x": -64, + "y": -648 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "type": "basic.input", "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 168, - "y": 112 - }, - "size": { - "width": 248, - "height": 80 - } - } - ], - "wires": [ - { - "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" - }, - "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" + "x": -408, + "y": -584 } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", - "type": "basic.input", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 128, - "y": 168 + "x": -64, + "y": -568 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "name": "c" }, "position": { - "x": 640, - "y": 200 + "x": 832, + "y": -480 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "type": "basic.input", + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", "data": { - "name": "0", + "name": "a1", "range": "[3:0]", - "clock": false, + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 128, - "y": 224 + "x": 248, + "y": -456 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - } + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": -80, + "y": -448 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "port": "in" - }, - "size": 8 }, { - "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", + "data": { + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "size": 4 + "position": { + "x": -400, + "y": -392 + } }, { - "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - }, - "size": 4 - } - ] - } - } - }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { - "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "type": "basic.inputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", + "name": "b0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "deeppink" + "blockColor": "fuchsia" }, "position": { - "x": 8, - "y": -744 + "x": -80, + "y": -376 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 576, - "y": -736 + "x": 248, + "y": -376 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", "type": "basic.output", "data": { - "name": "c" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 920, - "y": -696 + "x": 840, + "y": -336 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", "data": { + "name": "a0", + "range": "[3:0]", "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "size": 4 }, "position": { - "x": 8, - "y": -688 + "x": 120, + "y": -304 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", "type": "basic.outputLabel", "data": { + "name": "b0", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 576, - "y": -672 + "x": 120, + "y": -232 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "ci", + "clock": false }, "position": { - "x": 8, - "y": -632 + "x": -392, + "y": -168 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": -312, - "y": -632 + "x": -248, + "y": -392 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" - }, + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, + "x": -240, "y": -584 - } - }, - { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" }, - "position": { - "x": 8, - "y": -576 + "size": { + "width": 96, + "height": 64 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" - }, + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 456, - "y": -528 - } - }, - { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "x": 688, + "y": -336 }, - "position": { - "x": -8, - "y": -448 + "size": { + "width": 96, + "height": 64 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" - }, + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 328, - "y": -440 + "x": 320, + "y": -248 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": -8, - "y": -384 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": -312, - "y": -384 - } + "target": { + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "port": "inlabel" + }, + "size": 4 }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": 328, - "y": -376 - } + "target": { + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": 1064, - "y": -368 - } + "target": { + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "port": "inlabel" + }, + "size": 4 }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": -16, - "y": -320 - } - }, - { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" }, - "position": { - "x": 184, - "y": -296 - } + "size": 4 }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "port": "outlabel" }, - "position": { - "x": -32, - "y": -264 - } - }, - { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 184, - "y": -232 - } + "size": 4 }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false + "source": { + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" }, - "position": { - "x": -296, - "y": -168 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 96 - } + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "source": { + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "size": 4 }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 + "source": { + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 744, - "y": -688 + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, - { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] + } + ] + } + } + }, + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "package": { + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 120, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 632, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "type": "basic.input", + "data": { + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 120, + "y": 264 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "i0", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 296, + "y": 176 + }, + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "port": "out" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] - }, + "size": 8 + } + ] + } + } + }, + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { + "package": { + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 920, + "y": -24 } }, { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 920, + "y": 56 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 368, + "y": 64 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", + "data": { + "name": "rst", + "clock": false }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 376, + "y": 200 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 920, + "y": 200 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 376, + "y": 336 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 656, + "y": -80 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 528, + "y": 32 }, - "size": 4 - }, + "size": { + "width": 344, + "height": 400 + } + } + ], + "wires": [ { "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" }, "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", "port": "in" }, - "size": 4 + "vertices": [], + "size": 16 }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "vertices": [] }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" } }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" + }, + "size": 16 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", "port": "out" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" } } ] } } }, - "c3c498191b14e9288a85fa2871b3966665f75475": { + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "name": "nc" }, "position": { - "x": -64, - "y": -648 + "x": 384, + "y": -80 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": true }, "position": { - "x": -408, - "y": -584 + "x": -136, + "y": -16 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "type": "basic.inputLabel", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "name": "" }, "position": { - "x": -64, - "y": -568 + "x": 384, + "y": 56 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", "data": { - "name": "c" + "name": "", + "clock": false }, "position": { - "x": 832, - "y": -480 + "x": -136, + "y": 128 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "type": "basic.outputLabel", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 248, - "y": -456 + "x": 32, + "y": -56 + }, + "size": { + "width": 296, + "height": 288 + } + } + ], + "wires": [ + { + "source": { + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" } }, { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" }, - "position": { - "x": -80, - "y": -448 + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" + }, + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", + "clock": true + }, + "position": { + "x": 216, + "y": -40 + } + }, + { + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 368, + "y": -40 + } + }, + { + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", + "data": { + "name": "data", + "range": "[15:0]", "clock": false, - "size": 8 + "size": 16 }, "position": { - "x": -400, - "y": -392 + "x": 200, + "y": 128 } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -80, - "y": -376 + "x": 344, + "y": 128 } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "size": 4 + "size": 16 }, "position": { - "x": 248, - "y": -376 + "x": 560, + "y": 128 } }, { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", "type": "basic.output", "data": { - "name": "s", + "name": "LED", "range": "[7:0]", "size": 8 }, "position": { - "x": 840, - "y": -336 + "x": 1136, + "y": 144 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -304 + "x": 600, + "y": 240 } }, { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" + }, + "position": { + "x": 1208, + "y": 296 + } + }, + { + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "ticsel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -232 + "x": 600, + "y": 312 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "ci", + "name": "sel", "clock": false }, "position": { - "x": -392, - "y": -168 + "x": 200, + "y": 320 } }, { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" + }, "position": { - "x": -248, - "y": -392 + "x": 344, + "y": 320 + } + }, + { + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", + "data": { + "name": "b0" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 1216, + "y": 376 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": -240, - "y": -584 + "x": 1064, + "y": 376 }, "size": { "width": 96, @@ -9361,23 +9374,27 @@ } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true + }, "position": { - "x": 688, - "y": -336 + "x": 1344, + "y": 376 }, "size": { - "width": 96, - "height": 64 + "width": 184, + "height": 56 } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 320, - "y": -248 + "x": 952, + "y": 128 }, "size": { "width": 96, @@ -9385,1224 +9402,1175 @@ } }, { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 464, - "y": -392 + "x": 720, + "y": 128 }, "size": { "width": 96, - "height": 96 + "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "port": "inlabel" + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", + "position": { + "x": 744, + "y": 296 }, - "size": 4 - }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" }, - "size": 4 + "vertices": [] }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "port": "outlabel" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + } }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "port": "inlabel" }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], - "size": 4 + "size": 16 }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "block": "514effa0-6d57-4281-b479-22d05798dceb", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 }, - "size": 4 + "size": 16 }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], - "size": 4 - }, - { - "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "size": 8 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" - }, - "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" }, "size": 8 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "port": "in" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - }, - "vertices": [ - { - "x": 624, - "y": -392 - } - ] + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "d1a52ec25aee5e4823102a32325600666fe99e12": { "package": { - "name": "Bus16-Join-half", + "name": "8-bits-Mux-2-1", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "2-to-1 Multplexer (8-bit channels)", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 120, - "y": 168 + "x": 768, + "y": 192 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 632, - "y": 200 + "x": 552, + "y": 208 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "id": "520455a3-592c-4fd0-ade9-62d366c88919", "type": "basic.input", "data": { - "name": "0", + "name": "1", "range": "[7:0]", "clock": false, "size": 8 }, "position": { - "x": 120, + "x": 200, "y": 264 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } - }, - "position": { - "x": 296, - "y": 176 + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, - "size": { - "width": 272, - "height": 104 + "position": { + "x": 768, + "y": 264 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", + "data": { + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "size": 8 + "position": { + "x": 544, + "y": 280 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": 808, + "y": 416 + } + }, { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[7:0]", + "size": 8 }, "position": { - "x": 88, - "y": 152 + "x": 1336, + "y": 432 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": false + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, "position": { - "x": 88, - "y": 280 + "x": 584, + "y": 528 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "type": "basic.output", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 616, - "y": 352 + "x": 808, + "y": 552 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", + "type": "basic.input", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 + "x": 208, + "y": 592 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "type": "basic.inputLabel", "data": { - "info": "Input signal", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": 584, + "y": 608 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "type": "basic.outputLabel", "data": { - "info": "System clock", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 808, + "y": 616 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "info": "Current signal \nstate", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 808, + "y": 680 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "name": "sel", + "clock": false }, "position": { - "x": 328, - "y": 200 + "x": 392, + "y": 768 + } + }, + { + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 248, - "height": 48 + "position": { + "x": 552, + "y": 768 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", "type": "basic.info", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "info": "Channel B", "readonly": true }, "position": { - "x": 504, - "y": 264 + "x": 424, + "y": 512 }, "size": { - "width": 400, - "height": 72 + "width": 144, + "height": 32 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 480, - "y": 352 + "x": 968, + "y": 568 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", "type": "basic.info", "data": { - "info": "In any other case the output is 0", + "info": "Channel A", "readonly": true }, "position": { - "x": 520, - "y": 432 + "x": 424, + "y": 168 }, "size": { - "width": 296, - "height": 40 + "width": 144, + "height": 32 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 320, - "y": 264 + "x": 1152, + "y": 432 }, "size": { "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 376, + "y": 264 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "size": { + "width": 96, + "height": 64 } }, { - "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 392, + "y": 592 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 64 } }, + { + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", + "position": { + "x": 960, + "y": 248 + }, + "size": { + "width": 96, + "height": 96 + } + } + ], + "wires": [ { "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "port": "inlabel" } }, { "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, "vertices": [ { - "x": 264, - "y": 368 + "x": 928, + "y": 624 } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -256, - "y": -56 - } + ], + "size": 4 }, { - "id": "e226f910-14af-473d-956b-03559f466726", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "source": { + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" }, - "position": { - "x": -104, - "y": -56 - } - }, - { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "target": { + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "position": { - "x": 128, - "y": 32 - } + "size": 4 }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "source": { + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -56, - "y": 72 - } - }, - { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", - "data": { - "name": "" + "target": { + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" }, - "position": { - "x": 424, - "y": 128 - } + "size": 4 }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -64, - "y": 160 - } + "target": { + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" + }, + "size": 4 }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 104, - "y": 144 + "source": { + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 280, - "y": 128 + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" + }, + "size": 4 + }, { "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "e226f910-14af-473d-956b-03559f466726", + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", "port": "inlabel" - } + }, + "size": 4 }, { "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", "port": "outlabel" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "port": "out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "520455a3-592c-4fd0-ade9-62d366c88919", + "port": "out" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" - } - } - ] + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" + }, + "target": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + }, + "target": { + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "vertices": [ + { + "x": 1088, + "y": 360 + } + ], + "size": 4 + } + ] } } }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "name": "4-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (4-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 824, - "y": 304 + "x": 712, + "y": -72 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 376, - "y": 320 + "x": 712, + "y": 0 } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "not", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 520, - "y": 160 + "x": 712, + "y": 72 } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 632, - "y": 392 - }, - "size": { - "width": 336, - "height": 96 + "x": 712, + "y": 160 } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 8 - }, - "size": { - "width": 296, - "height": 144 + "x": 432, + "y": 160 } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", "position": { - "x": 520, - "y": 256 - }, - "size": { - "width": 96, - "height": 64 + "x": 440, + "y": 224 } - } - ], - "wires": [ - { - "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" - }, - "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - }, - "vertices": [] }, { - "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 712, + "y": 232 } }, { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": 120, + "y": 240 } }, { - "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 960, - "y": 248 + "x": 432, + "y": 296 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 128 + "x": 712, + "y": 304 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", "data": { - "code": "assign k = VALUE;", - "params": [ + "blockColor": "fuchsia", + "name": "A0", + "pins": [ { - "name": "VALUE" + "index": "0", + "name": "NULL", + "value": "NULL" } ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 672, - "y": 248 - }, - "size": { - "width": 208, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" - }, - "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "x": 416, + "y": 360 } }, { - "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A1", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "port": "in" + "position": { + "x": 712, + "y": 400 } - } - ] - } - } - }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { - "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[3:0]", + "size": 4 }, "position": { - "x": 216, - "y": -40 + "x": 1256, + "y": 416 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "turquoise", + "name": "B3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 368, - "y": -40 + "x": 456, + "y": 464 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "type": "basic.input", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", + "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 200, - "y": 128 + "x": 712, + "y": 488 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "turquoise", + "name": "B2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 344, - "y": 128 + "x": 464, + "y": 528 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 120, + "y": 544 + } + }, + { + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": 712, + "y": 560 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", "data": { - "name": "LED", - "range": "[7:0]", - "size": 8 + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1136, - "y": 144 + "x": 464, + "y": 592 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "A0" }, "position": { - "x": 600, - "y": 240 + "x": 720, + "y": 648 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", "data": { - "name": "byte" + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1208, - "y": 296 + "x": 432, + "y": 648 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "turquoise", + "name": "B0", "oldBlockColor": "fuchsia" }, "position": { - "x": 600, - "y": 312 + "x": 720, + "y": 720 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { "name": "sel", "clock": false }, "position": { - "x": 200, - "y": 320 + "x": 104, + "y": 728 } }, { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "navy", + "name": "sel", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 344, - "y": 320 + "x": 264, + "y": 728 } }, { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "name": "b0" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1216, - "y": 376 + "x": 712, + "y": 800 } }, { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 1064, - "y": 376 + "x": 856, + "y": 472 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 864, + "y": 704 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", "type": "basic.info", "data": { - "info": "Byte 0 \n(least significant) ", + "info": "Channel A", "readonly": true }, "position": { - "x": 1344, - "y": 376 + "x": 304, + "y": 128 }, "size": { - "width": 184, - "height": 56 + "width": 144, + "height": 32 } }, { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", + "data": { + "info": "Channel B", + "readonly": true + }, "position": { - "x": 744, - "y": 296 + "x": 304, + "y": 480 + }, + "size": { + "width": 144, + "height": 32 + } + }, + { + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 216 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 952, - "y": 128 + "x": 1040, + "y": 384 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": -16 }, "size": { "width": 96, @@ -10610,653 +10578,503 @@ } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 720, - "y": 128 + "x": 288, + "y": 512 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 280, + "y": 208 + }, + "size": { + "width": 96, + "height": 128 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" + } + }, + { + "source": { + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", "port": "inlabel" } }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "port": "inlabel" } }, { "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", "port": "inlabel" + } + }, + { + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "size": 16 + "target": { + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "port": "inlabel" + } }, { "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "port": "outlabel" }, "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 - }, - "size": 16 + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "port": "outlabel" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, - "size": 8 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + } }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - } - ] - } - } - }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { - "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 232, - "y": -112 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" + "source": { + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, - "position": { - "x": 880, - "y": 16 - } - }, - { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "position": { - "x": 464, - "y": 32 - } + "vertices": [] }, { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "port": "outlabel" }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": { - "width": 96, - "height": 64 - } + "vertices": [] }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", - "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "port": "inlabel" } }, { "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", "port": "inlabel" } }, { "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" - } + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + }, + "vertices": [ + { + "x": 984, + "y": 472 + } + ] }, { "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 976, + "y": 352 + } + ] }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", + "port": "in" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "port": "out" + }, + "target": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 } ] } } }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "1-bit-reg", + "name": "Mux-2-1", "version": "0.1", - "description": "Reg: 1-Bit register", + "description": "2-to-1 Multplexer (1-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 80, - "y": 440 + "x": 456, + "y": 360 } }, { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "" }, "position": { - "x": 224, - "y": 440 + "x": 1096, + "y": 392 } }, { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", + "name": "1", "clock": false }, "position": { - "x": 80, - "y": 552 + "x": 136, + "y": 416 } }, { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 1152, - "y": 592 + "x": 272, + "y": 416 } }, { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "curr_bit", + "name": "b", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" - }, - "position": { - "x": 232, - "y": 632 + "x": 272, + "y": 528 } }, { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", "type": "basic.input", "data": { - "name": "load", + "name": "0", "clock": false }, "position": { - "x": 80, - "y": 632 + "x": 136, + "y": 528 } }, { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", + "id": "8d94a294-a698-43c5-9777-874fd39b8586", "type": "basic.outputLabel", "data": { - "blockColor": "darkgreen", - "name": "load", + "blockColor": "fuchsia", + "name": "b", "oldBlockColor": "fuchsia" }, "position": { - "x": 456, - "y": 688 + "x": 616, + "y": 552 } }, { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "name": "", - "value": "0", - "local": false + "name": "sel", + "clock": false }, "position": { - "x": 784, - "y": 504 + "x": 376, + "y": 656 } }, { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 640, - "y": 712 + "x": 952, + "y": 392 }, "size": { - "width": 104, - "height": 40 + "width": 96, + "height": 64 } }, { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 776, - "y": 680 + "x": 600, + "y": 376 }, "size": { - "width": 120, - "height": 48 + "width": 96, + "height": 64 } }, { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 616, - "y": 600 + "x": 624, + "y": 656 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { "x": 784, - "y": 600 + "y": 568 }, "size": { "width": 96, @@ -11267,2575 +11085,348 @@ "wires": [ { "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", "port": "outlabel" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" + "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "port": "outlabel" }, "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, { "source": { "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "port": "out" }, "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "port": "inlabel" } }, { "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", "port": "out" }, "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "port": "inlabel" } }, { "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] + "vertices": [] }, { "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { - "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 144, - "y": 504 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - } - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 456, - "y": 360 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1096, - "y": 392 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 136, - "y": 416 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": 416 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": 528 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 136, - "y": 528 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 616, - "y": 552 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 376, - "y": 656 - } - }, - { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 952, - "y": 392 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 600, - "y": 376 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 624, - "y": 656 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 784, - "y": 568 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - }, - "vertices": [] - }, - { - "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - } - ] - } - } - }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { - "package": { - "name": "8-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "type": "basic.outputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 768, - "y": 192 - } - }, - { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "type": "basic.inputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 552, - "y": 208 - } - }, - { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", - "type": "basic.input", - "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 200, - "y": 264 - } - }, - { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "type": "basic.outputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 768, - "y": 264 - } - }, - { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "type": "basic.inputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 544, - "y": 280 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 416 - } - }, - { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 1336, - "y": 432 - } - }, - { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "blockColor": "lightseagreen", - "size": 4 - }, - "position": { - "x": 584, - "y": 528 - } - }, - { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "type": "basic.outputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 808, - "y": 552 - } - }, - { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", - "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 208, - "y": 592 - } - }, - { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "type": "basic.inputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 584, - "y": 608 - } - }, - { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "type": "basic.outputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 808, - "y": 616 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 680 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 392, - "y": 768 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 552, - "y": 768 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 424, - "y": 512 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 968, - "y": 568 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 424, - "y": 168 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 1152, - "y": 432 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 376, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 392, - "y": 592 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 960, - "y": 248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 - }, - { - "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" - }, - "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" - }, - "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "vertices": [ - { - "x": 1088, - "y": 360 - } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } - }, - { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 0 - } - }, - { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 72 - } - }, - { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 160 - } - }, - { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 - } - }, - { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 440, - "y": 224 - } - }, - { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 232 - } - }, - { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 240 - } - }, - { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 432, - "y": 296 - } - }, - { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 304 - } - }, - { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 360 - } - }, - { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 400 - } - }, - { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1256, - "y": 416 - } - }, - { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 456, - "y": 464 - } - }, - { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 488 - } - }, - { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 464, - "y": 528 - } - }, - { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 560 - } - }, - { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 592 - } - }, - { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0" - }, - "position": { - "x": 720, - "y": 648 - } - }, - { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 720, - "y": 720 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 104, - "y": 728 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 264, - "y": 728 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 800 - } - }, - { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 216 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 1040, - "y": 384 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": -16 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 288, - "y": 512 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 280, - "y": 208 - }, - "size": { - "width": 96, - "height": 128 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } - }, - { - "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" - } - }, - { - "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] - }, - { - "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] - }, - { - "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" - }, - "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" - }, - "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - } - ] - } - } - }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { - "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 496, - "y": 80 - } - }, - { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "type": "basic.input", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": -16, - "y": 80 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", - "data": { - "info": "Input", - "readonly": true - }, - "position": { - "x": 24, - "y": 56 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 512, - "y": 48 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" - }, - "position": { - "x": 176, - "y": 64 - }, - "size": { - "width": 232, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" - }, - "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "port": "out" - }, - "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" - }, - "size": 16 - } - ] - } - } - }, - "0dcb171180dccc3edef2bc927d3d9479fa2257c9": { - "package": { - "name": "UINT16-11bit-verilog", - "version": "0.1", - "description": "UINT32-11bit-verilog: Extend a 11-bit unsigned integer to 32-bits. Verilog implementation ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "vertices": [] + }, + { + "source": { + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" + }, + "target": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] + }, + { + "source": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + } + ] + } + } + }, + "b7f7136a87c607769a64233fd99bc12818a05746": { + "package": { + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, "position": { - "x": 920, - "y": 304 + "x": 328, + "y": -80 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 } }, { - "id": "86d0c863-64a6-4450-80e4-d00a0ceec5b4", + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "type": "basic.input", "data": { - "name": "i", - "virtual": true, - "range": "[10:0]", - "pins": [ - { - "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" - } - ], + "name": "", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 320, + "y": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i", - "range": "[10:0]", - "size": 11 + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[15:0]", - "size": 16 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 11;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 512, - "y": 272 + "x": 496, + "y": -120 }, "size": { - "width": 344, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, - "size": 16 + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" + } }, { "source": { - "block": "86d0c863-64a6-4450-80e4-d00a0ceec5b4", + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 11 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } } }, - "968f3a4ec6cf93abf2005d6a37a5a81d4208175c": { + "811f62c41840b660992760fc93d06f01b74d6f10": { "package": { - "name": "Copy-11-verilog", - "version": "0.2", - "description": "Copy-11: Copy the input wire twice and generate a 11 bits Bus output (Verilog implementation)", + "name": "11-Uint16", + "version": "0.4", + "description": "11-Uint16: 11 bits unsigned integer extension to 16 bits. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "type": "basic.input", + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { "name": "", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 448, - "y": 176 + "x": 952, + "y": 368 } }, { - "id": "88b7d181-a04b-4784-81d1-ab2e4107beeb", - "type": "basic.output", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { "name": "", "range": "[10:0]", "size": 11 }, "position": { - "x": 992, - "y": 176 + "x": 336, + "y": 368 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i" + "name": "i", + "range": "[10:0]", + "size": 11 } ], "out": [ { "name": "o", - "range": "[10:0]", - "size": 11 + "range": "[15:0]", + "size": 16 } ] }, "params": [], - "code": "//-- Number of bits\nlocalparam N=11;\n\nassign o = {N{i}};\n" + "code": "//-- Number of input bits\nlocalparam X = 11;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 632, - "y": 144 + "x": 504, + "y": 272 }, "size": { - "width": 288, - "height": 120 + "width": 384, + "height": 248 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "port": "out" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" - } + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" }, "target": { - "block": "88b7d181-a04b-4784-81d1-ab2e4107beeb", - "port": "in" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" }, "size": 11 } diff --git a/examples/TESTs/Uint/Uint16/12-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/12-bits/Alhambra-II/01-Manual-testing.ice index e8cf2e60..02eeaf19 100644 --- a/examples/TESTs/Uint/Uint16/12-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/12-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-12bit Manual testing", + "info": "## 12-Uint16 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,35 +154,35 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "8539f1e6-5305-4b25-bf4b-75bdbbd539ee", + "type": "7c11d5cc7618a6b401d063cad119437ad92a9e3a", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "dbb85f7a-5ed9-4b04-b9e4-0f32f11d8bc7", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 728, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "8539f1e6-5305-4b25-bf4b-75bdbbd539ee", - "type": "7c11d5cc7618a6b401d063cad119437ad92a9e3a", + "id": "6907a3ee-e891-4838-b227-e6fdc6aea50f", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 344, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -190,8 +190,8 @@ } }, { - "id": "6a6881e8-b90b-442f-bfa8-8d4ccf5b50cd", - "type": "4fc848aa2b04b2243e5e28eabf26b49e5498efca", + "id": "818dfc0e-609f-4f6c-a5ca-2cafdf702f09", + "type": "bd9ec1610b279c1105c609d204f99c1b7523c228", "position": { "x": 544, "y": 56 @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "dbb85f7a-5ed9-4b04-b9e4-0f32f11d8bc7", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "dbb85f7a-5ed9-4b04-b9e4-0f32f11d8bc7", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "6907a3ee-e891-4838-b227-e6fdc6aea50f", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "6907a3ee-e891-4838-b227-e6fdc6aea50f", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "dbb85f7a-5ed9-4b04-b9e4-0f32f11d8bc7", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "dbb85f7a-5ed9-4b04-b9e4-0f32f11d8bc7", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "6a6881e8-b90b-442f-bfa8-8d4ccf5b50cd", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "818dfc0e-609f-4f6c-a5ca-2cafdf702f09", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "7de16813-6379-4a6c-ba12-33b214f72148" }, "target": { - "block": "6a6881e8-b90b-442f-bfa8-8d4ccf5b50cd", - "port": "61aae1ae-d521-4d00-ad3e-dc03583ede97" + "block": "818dfc0e-609f-4f6c-a5ca-2cafdf702f09", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 12 } @@ -291,687 +291,808 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 - } - }, - { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 512, + "y": 48 }, - "position": { - "x": 744, - "y": 136 + "size": { + "width": 80, + "height": 40 } }, { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "name": "Press" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 1024, - "y": 168 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 304, - "y": 200 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" + }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "7c11d5cc7618a6b401d063cad119437ad92a9e3a": { + "package": { + "name": "Copy-12-verilog", + "version": "0.2", + "description": "Copy-12: Copy the input wire twice and generate a 12 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "7de16813-6379-4a6c-ba12-33b214f72148", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "range": "[11:0]", + "size": 12 }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[11:0]", + "size": 12 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=12;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", - "data": { - "info": "Tic: button pressed", - "readonly": true + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" }, - "position": { - "x": 1024, - "y": 152 + "target": { + "block": "7de16813-6379-4a6c-ba12-33b214f72148", + "port": "in" }, - "size": { - "width": 184, - "height": 40 - } - }, + "size": 12 + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ { - "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", - "type": "basic.info", + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", "data": { - "info": "Rising edge detector", - "readonly": true + "name": "", + "clock": true }, "position": { - "x": 872, - "y": 248 - }, - "size": { - "width": 184, - "height": 40 + "x": 216, + "y": -40 } }, { - "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", - "type": "basic.info", + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", "data": { - "info": "Pull up on/off", - "readonly": true + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 448, - "y": 16 - }, - "size": { - "width": 152, - "height": 40 + "x": 368, + "y": -40 } }, { - "id": "5a5caef3-ffd0-46a4-9f63-e55aa8cd750d", - "type": "basic.info", + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", "data": { - "info": "Not on/off", - "readonly": true + "name": "data", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 576, - "y": 16 - }, - "size": { - "width": 120, - "height": 32 + "x": 200, + "y": 128 } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", - "position": { - "x": 888, - "y": 168 + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "type": "basic.inputLabel", + "data": { + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", "position": { - "x": 496, - "y": 184 - }, - "size": { - "width": 96, - "height": 64 + "x": 344, + "y": 128 } - } - ], - "wires": [ - { - "source": { - "block": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "port": "out" - }, - "target": { - "block": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "port": "outlabel" - }, - "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" - }, - "vertices": [ - { - "x": 424, - "y": 160 - } - ] }, { - "source": { - "block": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "port": "outlabel" + "id": "514effa0-6d57-4281-b479-22d05798dceb", + "type": "basic.outputLabel", + "data": { + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, - "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "port": "2708468d-1088-4570-be63-fb0d4799a941" + "position": { + "x": 560, + "y": 128 } }, { - "source": { - "block": "21bc142d-a93a-430d-b37a-326435def9f9", - "port": "out" + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "type": "basic.output", + "data": { + "name": "LED", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 1136, + "y": 144 } }, { - "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "port": "in" + "position": { + "x": 600, + "y": 240 } }, { - "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" - }, - "vertices": [] - }, - { - "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" }, - "target": { - "block": "997db8c4-b772-49d8-83e7-4427aff720e6", - "port": "in" + "position": { + "x": 1208, + "y": 296 } }, { - "source": { - "block": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "port": "constant-out" + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" + "position": { + "x": 600, + "y": 312 } }, { - "source": { - "block": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "port": "constant-out" - }, - "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" - } - } - ] - } - } - }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { - "package": { - "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "2708468d-1088-4570-be63-fb0d4799a941", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "sel", + "clock": false }, "position": { - "x": 152, - "y": 152 + "x": 200, + "y": 320 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": false + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 152, - "y": 280 + "x": 344, + "y": 320 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "id": "31636314-c790-4631-b8c2-1dad55572202", "type": "basic.output", "data": { - "name": "" + "name": "b0" }, "position": { - "x": 840, - "y": 400 + "x": 1216, + "y": 376 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", - "data": { - "info": "## Rising edge detector\n\nIt generates a 1-period pulse (tic) when a rising edge is detected on the \ninput signal", - "readonly": true - }, + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 176, - "y": -16 + "x": 1064, + "y": 376 }, "size": { - "width": 568, - "height": 80 + "width": 96, + "height": 64 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", "type": "basic.info", "data": { - "info": "Input signal", + "info": "Byte 0 \n(least significant) ", "readonly": true }, "position": { - "x": 160, - "y": 256 + "x": 1344, + "y": 376 }, "size": { - "width": 136, - "height": 40 + "width": 184, + "height": 56 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 168, - "y": 120 + "x": 952, + "y": 128 }, "size": { "width": 96, - "height": 48 + "height": 96 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", - "data": { - "info": "Current signal \nstate", - "readonly": true - }, + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 328, - "y": 456 + "x": 720, + "y": 128 }, "size": { - "width": 168, - "height": 48 + "width": 96, + "height": 64 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", - "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true - }, + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", "position": { - "x": 328, - "y": 200 + "x": 744, + "y": 296 }, "size": { - "width": 248, - "height": 48 + "width": 96, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", - "type": "basic.info", - "data": { - "info": "If the current signal is 1 and its value in \nthe previous clock cycle was 0, it means \nthat a rising edge has been detected! \nThe output es 1\n\nIn any other case the output is 0", - "readonly": true + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, - "position": { - "x": 728, - "y": 256 + "target": { + "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "port": "inlabel" }, - "size": { - "width": 344, - "height": 96 - } + "vertices": [] }, { - "id": "c3990bfd-57a6-4602-ab46-800486326dd6", - "type": "basic.info", - "data": { - "info": "**Delay**: 0 clock cycles \n\nThere is no delay between the arrival of a rising edge \nand its detection", - "readonly": true - }, - "position": { - "x": 528, - "y": 504 + "source": { + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "port": "outlabel" }, - "size": { - "width": 416, - "height": 88 + "target": { + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 320, - "y": 264 + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "port": "inlabel" } }, { - "id": "70cfa680-3def-482c-b194-054c1f522357", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 552, - "y": 264 + "source": { + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" } }, { - "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 696, - "y": 400 + "source": { + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "port": "inlabel" + }, + "size": 16 + }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "514effa0-6d57-4281-b479-22d05798dceb", + "port": "outlabel" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 + }, + "size": 16 }, { "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "70cfa680-3def-482c-b194-054c1f522357", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "70cfa680-3def-482c-b194-054c1f522357", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" + }, + "size": 8 }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" + }, + "size": 8 + }, + { + "source": { + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "block": "38edd85d-359d-43ac-a794-056763ee2628", "port": "in" } + }, + { + "source": { + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } } ] } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { + "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { - "name": "DFF", + "name": "NOT", "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" + "description": "NOT gate (Verilog implementation)", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": 208, - "y": 160 + "x": 112, + "y": 72 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 816, - "y": 224 - } - }, - { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 208, - "y": 304 - } - }, - { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 + "x": 560, + "y": 72 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", "type": "basic.code", "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], + "code": "//-- NOT Gate\nassign q = ~a;\n\n", + "params": [], "ports": { "in": [ { - "name": "clk" - }, - { - "name": "d" + "name": "a" } ], "out": [ @@ -982,571 +1103,351 @@ } }, "position": { - "x": 384, - "y": 168 + "x": 256, + "y": 48 }, "size": { - "width": 344, - "height": 176 + "width": 256, + "height": 104 } }, { - "id": "53d11290-50b3-40fb-b253-222cb296b075", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", "type": "basic.info", "data": { - "info": "Parameter: Initial value", + "info": "Input", "readonly": true }, "position": { - "x": 488, - "y": 48 + "x": 128, + "y": 32 }, "size": { - "width": 208, + "width": 80, "height": 40 } }, { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", "type": "basic.info", "data": { - "info": "System clock", + "info": "Output", "readonly": true }, "position": { - "x": 208, - "y": 136 + "x": 576, + "y": 40 }, "size": { - "width": 120, - "height": 32 + "width": 80, + "height": 40 } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ + } + ], + "wires": [ { "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" + "block": "5365ed8c-e5db-4445-938f-8d689830ea5c", + "port": "a" } }, { "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "block": "5365ed8c-e5db-4445-938f-8d689830ea5c", "port": "q" }, "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } } ] } } }, - "3676a00f3a70e406487ed14b901daf3e4984e63d": { + "d1a52ec25aee5e4823102a32325600666fe99e12": { "package": { - "name": "NOT", - "version": "2.0", - "description": "NOT gate (Verilog implementation)", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" + "name": "8-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (8-bit channels)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 112, - "y": 72 + "x": 768, + "y": 192 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 560, - "y": 72 + "x": 552, + "y": 208 } }, { - "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", - "type": "basic.code", + "id": "520455a3-592c-4fd0-ade9-62d366c88919", + "type": "basic.input", "data": { - "code": "//-- NOT Gate\nassign q = ~a;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 256, - "height": 104 + "x": 200, + "y": 264 } }, { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", "data": { - "info": "Input", - "readonly": true + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 128, - "y": 32 - }, - "size": { - "width": 80, - "height": 40 + "x": 768, + "y": 264 } }, { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", "data": { - "info": "Output", - "readonly": true + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 576, - "y": 40 - }, - "size": { - "width": 80, - "height": 40 - } - } - ], - "wires": [ - { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" - }, - "target": { - "block": "5365ed8c-e5db-4445-938f-8d689830ea5c", - "port": "a" + "x": 544, + "y": 280 } }, { - "source": { - "block": "5365ed8c-e5db-4445-938f-8d689830ea5c", - "port": "q" - }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0": { - "package": { - "name": "AND2", - "version": "1.0.2", - "description": "Two bits input And gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22336.09%22%20height=%22194.045%22%20version=%221%22%3E%3Cpath%20d=%22M174.656%20190.045H78.304V4h96.352s87.463%208.625%2087.463%2091.94c0%2083.311-87.463%2094.105-87.463%2094.105z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2045.668h74.018M4.057%20144.812h74.018m184.632-50.034h69.326%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2292.894%22%20y=%22114.587%22%20font-weight=%22400%22%20font-size=%2258.054%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2292.894%22%20y=%22114.587%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3EAND%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 96, - "y": 56 + "x": 808, + "y": 416 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", "type": "basic.output", "data": { - "name": "" + "name": "", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 600, - "y": 96 + "x": 1336, + "y": 432 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, "position": { - "x": 96, - "y": 128 + "x": 584, + "y": 528 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "code": "//-- AND gate\n//-- Verilog implementation\n\nassign c = a & b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 304, - "height": 152 - } - } - ], - "wires": [ - { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" - }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" - } - }, - { - "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" - }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "x": 808, + "y": 552 } }, { - "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" - }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { - "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 592 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 280, - "y": 232 + "x": 584, + "y": 608 } }, { - "id": "626e14a3-68ca-440d-b469-aeb6a69bddcb", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 472, - "y": 368 + "x": 808, + "y": 616 } }, { - "id": "1b2fe6f0-f08f-44d2-824a-e5205b3e9fab", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "navy", + "name": "sel", "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "s" - }, - "position": { - "x": 1200, - "y": 440 + "x": 808, + "y": 680 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { - "name": "pin", + "name": "sel", "clock": false }, "position": { - "x": 152, - "y": 472 - } - }, - { - "id": "07e7cb88-d87c-4aa3-9938-fc226e3f4815", - "type": "basic.constant", - "data": { - "name": "pup", - "value": "0", - "local": false - }, - "position": { - "x": 336, - "y": 360 + "x": 392, + "y": 768 } }, { - "id": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c", - "type": "basic.constant", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "type": "basic.inputLabel", "data": { - "name": "not", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 760, - "y": 352 - } - }, - { - "id": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", - "type": "6c3affc36ce9207db9e9addcade0eb18994ddf4a", - "position": { - "x": 336, - "y": 472 - }, - "size": { - "width": 96, - "height": 64 + "x": 552, + "y": 768 } }, { - "id": "6ca11b45-e83b-492d-b175-8ab8f1faa08a", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", "type": "basic.info", "data": { - "info": "Internal pull-up \n* 0: OFF\n* 1: ON", + "info": "Channel B", "readonly": true }, "position": { - "x": 320, - "y": 560 + "x": 424, + "y": 512 }, "size": { - "width": 176, - "height": 72 + "width": 144, + "height": 32 } }, { - "id": "2349cf1c-768c-483c-bdf3-852e36755326", - "type": "basic.info", - "data": { - "info": "Synchronization stage", - "readonly": true - }, + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 552, - "y": 536 + "x": 968, + "y": 568 }, "size": { - "width": 184, - "height": 32 + "width": 96, + "height": 96 } }, { - "id": "c13f29d4-49ed-45ca-bf58-401682aa156c", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", "type": "basic.info", "data": { - "info": "Normalization stage\n\n* 0: Wire\n* 1: signal inverted", + "info": "Channel A", "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 424, + "y": 168 }, "size": { - "width": 192, - "height": 88 + "width": 144, + "height": 32 } }, { - "id": "9207da36-adfa-43d6-a633-ccaa601b9293", - "type": "basic.info", - "data": { - "info": "Debouncing stage", - "readonly": true - }, + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 1008, - "y": 528 + "x": 1152, + "y": 432 }, "size": { - "width": 168, - "height": 40 + "width": 96, + "height": 64 } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 1024, - "y": 440 + "x": 376, + "y": 264 }, "size": { "width": 96, @@ -1554,11 +1455,11 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 600, - "y": 456 + "x": 392, + "y": 592 }, "size": { "width": 96, @@ -1566,375 +1467,435 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 760, - "y": 456 + "x": 960, + "y": 248 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "c2136078-81d0-4137-8583-c122b93cbdb0", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" - }, - "vertices": [] + } }, { "source": { - "block": "626e14a3-68ca-440d-b469-aeb6a69bddcb", + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "1b2fe6f0-f08f-44d2-824a-e5205b3e9fab", + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", - "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "vertices": [ + { + "x": 928, + "y": 624 + } + ], + "size": 4 + }, + { + "source": { + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" + }, + "target": { + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" + }, + "target": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", - "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "port": "inlabel" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c", - "port": "constant-out" + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "port": "outlabel" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", - "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "07e7cb88-d87c-4aa3-9938-fc226e3f4815", - "port": "constant-out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", - "port": "121930e0-54c3-4b31-aa37-b33c7764abfa" - } + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", - "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", "port": "in" - } + }, + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "520455a3-592c-4fd0-ade9-62d366c88919", "port": "out" }, "target": { - "block": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", - "port": "bb4a1ca9-1b30-471e-92ca-ca7ff2fc1150" - } + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" + }, + "target": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + }, + "target": { + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "vertices": [ + { + "x": 1088, + "y": 360 + } + ], + "size": 4 } ] } } }, - "6c3affc36ce9207db9e9addcade0eb18994ddf4a": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "Pull-upx1", - "version": "1.0.2", - "description": "FPGA internal pull-up configuration on the input port", - "author": "Juan González", - "image": "%3Csvg%20id=%22svg2%22%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-265%20401.5%2063.5%2038.4%22%3E%3Cstyle%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3Cpath%20class=%22st0%22%20d=%22M-242.5%20411.8v11.8h-5.4v-11.8h5.4m1-1h-7.4v13.8h7.4v-13.8z%22/%3E%3Cpath%20d=%22M-212%20425.6l-15.4-8.7v8.5h-17.4v-2.7c0-.2-.1-.4-.3-.4l-2.3-1.2%205.6-2.9c.2-.1.3-.3.3-.5s-.1-.4-.3-.4l-5.7-2.7%202.4-1.6c.1-.1.2-.2.2-.4v-2.7h3.1l-3.5-6.1-3.5%206.1h3v2.5l-2.9%202c-.1.1-.2.3-.2.5s.1.3.3.4l5.6%202.6-5.6%202.9c-.2.1-.3.3-.3.4s.1.4.3.4l2.9%201.5V425.5H-265v1.2h37.6v8.5l15.4-8.7h10.5v-.8H-212zm-33.3-20.4l2.2%203.9h-4.5l2.3-3.9zm19.2%2027.7v-13.8l12.3%206.9-12.3%206.9z%22/%3E%3C/svg%3E" + "name": "4-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (4-bit channels)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "bb4a1ca9-1b30-471e-92ca-ca7ff2fc1150", - "type": "basic.input", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "pin", - "clock": false + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 72, - "y": 256 + "x": 712, + "y": -72 } }, { - "id": "a139fa0d-9b45-4480-a251-f4a66b49aa23", - "type": "basic.output", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 704, - "y": 256 + "x": 712, + "y": 0 } }, { - "id": "121930e0-54c3-4b31-aa37-b33c7764abfa", - "type": "basic.constant", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "on", - "value": "1", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 408, - "y": -8 + "x": 712, + "y": 72 } }, { - "id": "2b245a71-2d80-466b-955f-e3d61839fe25", - "type": "basic.code", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "code": "// 1-Pull up\n\n//-- Place the IO block, configured as \n//-- input with pull-up\nSB_IO\n #(\n .PIN_TYPE(6'b 1010_01),\n \n //-- The pull-up is activated or not\n //-- depeding on the ON parameter\n .PULLUP(ON)\n \n ) input_pin (\n\n //--- Input pin\n .PACKAGE_PIN(i),\n \n //-- Block output\n .D_IN_0(o),\n \n //-- Configured as input\n .OUTPUT_ENABLE(1'b0),\n \n //-- Not used\n .D_OUT_0(1'b0)\n );", - "params": [ - { - "name": "ON" - } - ], - "ports": { - "in": [ - { - "name": "i" - } - ], - "out": [ - { - "name": "o" - } - ] - } + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 256, - "y": 104 - }, - "size": { - "width": 392, - "height": 368 + "x": 712, + "y": 160 } }, { - "id": "8055c1f2-dad2-4257-a271-c0bd64700cd7", - "type": "basic.info", + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", "data": { - "info": "### Pull-up parameter:\n\n0: No pull-up \n1: Pull-up activated", - "readonly": true + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 144, - "y": -48 - }, - "size": { - "width": 264, - "height": 104 + "x": 432, + "y": 160 } }, { - "id": "5a96e53f-d2ff-4058-bbed-779876848487", - "type": "basic.info", + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", "data": { - "info": "Only an FPGA pin can \nbe connected here!!!", - "readonly": true + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 56, - "y": 200 - }, - "size": { - "width": 192, - "height": 56 + "x": 440, + "y": 224 } }, { - "id": "26b0a2d0-aaa1-4204-9e57-2f2d674e03a0", - "type": "basic.info", + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", "data": { - "info": "The pull-up is connected \nby default", - "readonly": true + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, "position": { - "x": 512, - "y": 0 - }, - "size": { - "width": 208, - "height": 56 - } - } - ], - "wires": [ - { - "source": { - "block": "bb4a1ca9-1b30-471e-92ca-ca7ff2fc1150", - "port": "out" - }, - "target": { - "block": "2b245a71-2d80-466b-955f-e3d61839fe25", - "port": "i" - } - }, - { - "source": { - "block": "2b245a71-2d80-466b-955f-e3d61839fe25", - "port": "o" - }, - "target": { - "block": "a139fa0d-9b45-4480-a251-f4a66b49aa23", - "port": "in" + "x": 712, + "y": 232 } }, { - "source": { - "block": "121930e0-54c3-4b31-aa37-b33c7764abfa", - "port": "constant-out" - }, - "target": { - "block": "2b245a71-2d80-466b-955f-e3d61839fe25", - "port": "ON" - } - } - ] - } - } - }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { - "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": -376, - "y": -656 + "x": 120, + "y": 240 } }, { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "fuchsia", + "name": "A1", "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true }, "position": { - "x": -224, - "y": -656 + "x": 432, + "y": 296 } }, { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", - "type": "basic.output", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 952, - "y": -600 + "x": 712, + "y": 304 } }, { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 416, + "y": 360 + } + }, + { + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "out" + "name": "A1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 816, - "y": -600 + "x": 712, + "y": 400 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", - "type": "basic.input", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { "name": "", - "clock": false + "range": "[3:0]", + "size": 4 }, "position": { - "x": -376, - "y": -584 + "x": 1256, + "y": 416 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "in", + "blockColor": "turquoise", + "name": "B3", "pins": [ { "index": "0", @@ -1942,32 +1903,33 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": -224, - "y": -584 + "x": 456, + "y": 464 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 552, - "y": -440 + "x": 712, + "y": 488 } }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "out", + "blockColor": "turquoise", + "name": "B2", "pins": [ { "index": "0", @@ -1976,732 +1938,649 @@ } ], "virtual": true, - "oldBlockColor": "fuchsia" + "oldBlockColor": "turquoise" }, "position": { - "x": 840, - "y": -352 + "x": 464, + "y": 528 } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 536, - "y": -352 + "x": 120, + "y": 544 } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "navy", + "name": "sel", "oldBlockColor": "fuchsia" }, "position": { - "x": 384, - "y": -288 + "x": 712, + "y": 560 } }, { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -232 + "x": 464, + "y": 592 } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "name": "A0" }, "position": { - "x": 120, - "y": -160 + "x": 720, + "y": 648 } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, "position": { - "x": 704, - "y": -368 + "x": 432, + "y": 648 + } + }, + { + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B0", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 720, + "y": 720 } }, { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "info": "Edge detector", - "readonly": true + "name": "sel", + "clock": false }, "position": { - "x": 248, - "y": -104 + "x": 104, + "y": 728 + } + }, + { + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": { - "width": 128, - "height": 40 + "position": { + "x": 264, + "y": 728 } }, { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 376, - "y": -120 + "x": 712, + "y": 800 + } + }, + { + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 472 }, "size": { - "width": 288, - "height": 56 + "width": 96, + "height": 96 } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", - "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true - }, + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 720, - "y": -456 + "x": 864, + "y": 704 }, "size": { - "width": 304, - "height": 72 + "width": 96, + "height": 96 } }, { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", "type": "basic.info", "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "info": "Channel A", "readonly": true }, "position": { - "x": 432, - "y": -640 + "x": 304, + "y": 128 }, "size": { - "width": 360, - "height": 120 + "width": 144, + "height": 32 } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", "type": "basic.info", "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "info": "Channel B", "readonly": true }, "position": { - "x": -8, - "y": -648 + "x": 304, + "y": 480 }, "size": { - "width": 312, - "height": 128 + "width": 144, + "height": 32 } }, { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", - "data": { - "info": "Stable output", - "readonly": true - }, + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 880, - "y": -280 + "x": 856, + "y": 216 }, "size": { - "width": 136, - "height": 40 + "width": 96, + "height": 96 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", - "data": { - "info": "Counter", - "readonly": true + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 1040, + "y": 384 }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 536, - "y": -232 + "x": 856, + "y": -16 }, "size": { "width": 96, - "height": 40 + "height": 96 } }, { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 520, - "y": -192 + "x": 288, + "y": 512 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 248, - "y": -176 + "x": 280, + "y": 208 }, "size": { "width": 96, - "height": 64 + "height": 128 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" } }, { "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "port": "outlabel" }, "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", + "port": "inlabel" } }, { "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", "port": "inlabel" } }, { "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "port": "inlabel" } }, { "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", "port": "inlabel" } }, { "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "port": "outlabel" }, "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", - "port": "in" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", "port": "outlabel" }, "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" - }, - "vertices": [] + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + } }, { "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } - } - ] - } - } - }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { - "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", - "data": { - "name": "", - "clock": true + "source": { + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, - "position": { - "x": 216, - "y": 104 - } + "target": { + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + }, + "vertices": [] }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", - "data": { - "name": "d", - "clock": false + "source": { + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, - "position": { - "x": 216, - "y": 192 - } + "target": { + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [] }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 192 - } + "target": { + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", - "data": { - "name": "load", - "clock": false + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 240, - "y": 320 + "target": { + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 472, - "y": 56 + "target": { + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "source": { + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, - "position": { - "x": 384, - "y": 168 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "size": { - "width": 272, - "height": 104 - } + "vertices": [] }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", - "type": "basic.info", - "data": { - "info": "Initial value", - "readonly": true + "source": { + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "port": "outlabel" }, - "position": { - "x": 480, - "y": 48 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": { - "width": 136, - "height": 32 - } - } - ], - "wires": [ + "vertices": [] + }, { "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "port": "outlabel" }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "port": "inlabel" } }, { "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", + "port": "inlabel" } }, { "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + }, + "vertices": [ + { + "x": 984, + "y": 472 + } + ] }, { "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" - } - } - ] - } - } - }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { - "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 216, - "y": -120 + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "source": { + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, - "position": { - "x": 368, - "y": -120 - } + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 976, + "y": 352 + } + ] }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 384, - "y": -32 - } + "target": { + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", + "port": "in" + }, + "size": 4 }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", - "type": "basic.outputLabel", - "data": { - "name": "q", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "source": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, - "position": { - "x": 1040, - "y": -32 + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", - "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "source": { + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" }, - "position": { - "x": 1216, - "y": -32 - } + "target": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "source": { + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "port": "out" + }, + "target": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + } + ] + } + } + }, + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { + "package": { + "name": "Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (1-bit channels)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", "data": { - "name": "max" + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 1208, - "y": 56 + "x": 456, + "y": 360 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "c" + "name": "" }, "position": { - "x": 1048, - "y": 56 + "x": 1096, + "y": 392 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "rst", + "name": "1", "clock": false }, "position": { - "x": 216, - "y": 56 + "x": 136, + "y": 416 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "type": "basic.inputLabel", "data": { - "name": "q", - "range": "[15:0]", + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "blockColor": "fuchsia" + "virtual": true }, "position": { - "x": 704, - "y": 56 + "x": 272, + "y": 416 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "c", + "name": "b", "pins": [ { "index": "0", @@ -2709,31 +2588,93 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 856, - "y": 144 + "x": 272, + "y": 528 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", - "position": { - "x": 544, - "y": 40 + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 136, + "y": 528 } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", - "position": { - "x": 720, - "y": 160 + "id": "8d94a294-a698-43c5-9777-874fd39b8586", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 616, + "y": 552 + } + }, + { + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", + "data": { + "name": "sel", + "clock": false + }, + "position": { + "x": 376, + "y": 656 + } + }, + { + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "position": { + "x": 952, + "y": 392 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 600, + "y": 376 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "position": { + "x": 624, + "y": 656 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 784, + "y": 568 }, "size": { "width": 96, @@ -2744,1602 +2685,1881 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "port": "outlabel" }, "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "port": "inlabel" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", - "port": "outlabel" + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "port": "out" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "port": "in" + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "port": "inlabel" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "port": "inlabel" + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "port": "in" }, - "size": 16 + "vertices": [] }, { "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", - "port": "outlabel" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "size": 16 + "vertices": [] }, { "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - } + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "vertices": [], - "size": 16 + "vertices": [] }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "vertices": [ - { - "x": 840, - "y": 264 - } - ], - "size": 16 + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": -136, - "y": -448 + "x": 112, + "y": 40 } }, { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": -136, - "y": -376 + "x": 608, + "y": 72 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "97b51945-d716-4b6c-9db9-970d08541249", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": -632, - "y": -264 + "x": 112, + "y": 96 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } }, "position": { - "x": -480, - "y": -264 + "x": 256, + "y": 48 + }, + "size": { + "width": 312, + "height": 104 } - }, + } + ], + "wires": [ { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, - "position": { - "x": -112, - "y": -216 + "target": { + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", - "data": { - "name": "rst", - "clock": false + "source": { + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, - "position": { - "x": -624, - "y": -192 + "target": { + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "source": { + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" + }, + "target": { + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } + } + ] + } + } + }, + "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0": { + "package": { + "name": "AND2", + "version": "1.0.2", + "description": "Two bits input And gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22336.09%22%20height=%22194.045%22%20version=%221%22%3E%3Cpath%20d=%22M174.656%20190.045H78.304V4h96.352s87.463%208.625%2087.463%2091.94c0%2083.311-87.463%2094.105-87.463%2094.105z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2045.668h74.018M4.057%20144.812h74.018m184.632-50.034h69.326%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2292.894%22%20y=%22114.587%22%20font-weight=%22400%22%20font-size=%2258.054%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2292.894%22%20y=%22114.587%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3EAND%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "" }, "position": { - "x": -480, - "y": -192 + "x": 96, + "y": 56 } }, { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": -112, - "y": -144 + "x": 600, + "y": 96 } }, { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": -112, - "y": -8 + "x": 96, + "y": 128 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "code": "//-- AND gate\n//-- Verilog implementation\n\nassign c = a & b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } }, "position": { - "x": -128, - "y": 72 + "x": 256, + "y": 48 + }, + "size": { + "width": 304, + "height": 152 + } + } + ], + "wires": [ + { + "source": { + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" + }, + "target": { + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "type": "basic.output", + "source": { + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" + }, + "target": { + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } + }, + { + "source": { + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" + }, + "target": { + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "type": "basic.input", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "3", + "clock": false }, "position": { - "x": 568, - "y": 104 + "x": 80, + "y": 64 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", "type": "basic.input", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "2", + "clock": false }, "position": { - "x": -576, + "x": 80, "y": 136 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -128, - "y": 248 + "x": 712, + "y": 200 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "1", + "clock": false }, "position": { - "x": -128, - "y": 312 + "x": 80, + "y": 208 } }, { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, - "y": 352 + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 80, + "y": 272 } }, { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } + }, "position": { - "x": 40, - "y": 104 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 344, + "height": 104 } - }, + } + ], + "wires": [ { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", - "position": { - "x": -400, - "y": 104 + "source": { + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, - "size": { - "width": 96, - "height": 128 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, - { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", - "position": { - "x": 384, - "y": 72 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, - "y": -152 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 64, - "y": -360 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", "port": "out" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" - } - }, - { - "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" }, "vertices": [ { - "x": 0, - "y": 112 + "x": 200, + "y": 176 } ] }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" }, "vertices": [ { - "x": -8, - "y": 376 + "x": 224, + "y": 128 } ] }, { "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" + }, + "size": 4 + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ + { + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", + "data": { + "name": "3" + }, + "position": { + "x": 576, + "y": 80 } }, { - "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "port": "outlabel" + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", + "data": { + "name": "2" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 600, + "y": 144 } }, { - "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "position": { + "x": 128, + "y": 184 } }, { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", + "data": { + "name": "1" }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 592, + "y": 240 } }, { - "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", - "port": "outlabel" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", + "data": { + "name": "0" }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] + "position": { + "x": 568, + "y": 296 + } }, { - "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "port": "out" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, - "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "position": { + "x": 296, + "y": 176 }, - "size": 16 - }, + "size": { + "width": 208, + "height": 80 + } + } + ], + "wires": [ { "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", "port": "in" - }, - "size": 16 + } }, { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -272, - "y": 368 - } - ], - "size": 4 + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" + } }, { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "size": 4 + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" + } }, { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" + } }, { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], "size": 4 - }, + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" + "position": { + "x": 128, + "y": 168 + } + }, + { + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "size": 4 + "position": { + "x": 640, + "y": 200 + } + }, + { + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 128, + "y": 224 + } }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } + }, + "position": { + "x": 296, + "y": 176 + }, + "size": { + "width": 272, + "height": 104 + } + } + ], + "wires": [ { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" }, - "size": 4 + "size": 8 }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], "size": 4 }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], "size": 4 } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "DFF-rst-x04", + "name": "Bus8-Split-half", "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "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": { "graph": { "blocks": [ { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "1", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -160, - "y": -336 + "x": 584, + "y": 104 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": -168, - "y": -280 + "x": 120, + "y": 208 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "type": "basic.output", "data": { - "name": "", - "clock": true + "name": "0", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -496, - "y": -256 + "x": 584, + "y": 232 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 + } + ] + } }, "position": { - "x": -344, - "y": -256 + "x": 272, + "y": 176 + }, + "size": { + "width": 240, + "height": 120 } + } + ], + "wires": [ + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" + }, + "target": { + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", + "port": "in" + }, + "size": 4 }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": 112, - "y": -200 - } + "target": { + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "port": "in" + }, + "size": 4 }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", + "source": { + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "type": "basic.output", "data": { - "name": "rst", - "clock": false + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { - "x": -488, - "y": -184 + "x": 608, + "y": 176 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": -344, - "y": -184 + "x": 96, + "y": 208 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "0", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 112, - "y": -112 + "x": 608, + "y": 272 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "o0", + "range": "[7:0]", + "size": 8 + } + ] + } }, "position": { - "x": 376, - "y": -8 + "x": 272, + "y": 176 + }, + "size": { + "width": 240, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "source": { + "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "port": "out" }, - "position": { - "x": 376, - "y": 80 - } + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 16 }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, - "position": { - "x": 1032, - "y": 184 - } + "target": { + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "port": "in" + }, + "size": 8 }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": 528, - "y": 208 - } - }, + "target": { + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "port": "in" + }, + "size": 8 + } + ] + } + } + }, + "b7f7136a87c607769a64233fd99bc12818a05746": { + "package": { + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 + }, + "design": { + "graph": { + "blocks": [ { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "clock": true }, "position": { - "x": -336, - "y": 224 + "x": 328, + "y": -80 } }, { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 520, - "y": 264 + "x": 904, + "y": -8 } }, { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "type": "basic.input", + "data": { + "name": "", + "clock": false }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 320, + "y": 64 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 624, + "y": -248 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 272, - "y": -128 + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "t" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": -16, - "y": -296 + "x": 496, + "y": -120 }, "size": { - "width": 96, - "height": 96 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" } }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "port": "outlabel" + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "port": "out" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 128, + "y": -32 } }, { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 280, + "y": -32 } }, { - "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 728, + "y": -16 } }, { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "position": { + "x": 312, + "y": 104 } }, { - "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "position": { + "x": 744, + "y": 136 } }, { - "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 1032, + "y": 184 } }, { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 304, + "y": 200 } }, { - "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false }, - "vertices": [ - { - "x": 712, - "y": 128 - } - ] + "position": { + "x": 560, + "y": 56 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 720, + "y": -32 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "size": { + "width": 176, + "height": 40 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 1024, + "y": 152 + }, + "size": { + "width": 184, + "height": 40 } }, { - "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", + "type": "basic.info", + "data": { + "info": "Rising edge detector", + "readonly": true }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + "position": { + "x": 872, + "y": 248 }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] + "size": { + "width": 184, + "height": 40 + } }, { - "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" + "id": "0957ba76-2838-49cb-8fd4-b9fe42f21801", + "type": "basic.info", + "data": { + "info": "Pull up on/off", + "readonly": true }, - "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 448, + "y": 16 }, - "size": 4 + "size": { + "width": 152, + "height": 40 + } }, { - "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "id": "5a5caef3-ffd0-46a4-9f63-e55aa8cd750d", + "type": "basic.info", + "data": { + "info": "Not on/off", + "readonly": true }, - "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" + "position": { + "x": 576, + "y": 16 }, - "size": 4 + "size": { + "width": 120, + "height": 32 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", + "position": { + "x": 888, + "y": 168 }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "size": { + "width": 96, + "height": 64 } }, { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", + "position": { + "x": 496, + "y": 184 }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "size": { + "width": 96, + "height": 64 } } - ] - } - } - }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { - "package": { - "name": "Bus4-Split-all", - "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { - "graph": { - "blocks": [ + ], + "wires": [ { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "type": "basic.output", - "data": { - "name": "3" + "source": { + "block": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "port": "out" }, - "position": { - "x": 576, - "y": 80 - } - }, - { - "id": "33072210-9ba0-4659-8339-95952b939e6e", - "type": "basic.output", - "data": { - "name": "2" + "target": { + "block": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "port": "inlabel" }, - "position": { - "x": 600, - "y": 144 - } + "vertices": [] }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "port": "outlabel" }, - "position": { - "x": 128, - "y": 184 - } - }, - { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", - "data": { - "name": "1" + "target": { + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, - "position": { - "x": 592, - "y": 240 - } + "vertices": [ + { + "x": 424, + "y": 160 + } + ] }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" + "source": { + "block": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "port": "outlabel" }, - "position": { - "x": 568, - "y": 296 + "target": { + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", + "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, - "position": { - "x": 296, - "y": 176 + "source": { + "block": "21bc142d-a93a-430d-b37a-326435def9f9", + "port": "out" }, - "size": { - "width": 208, - "height": 80 + "target": { + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ], - "wires": [ + }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "block": "b58132b2-2e39-4a85-ab5b-63bded91cecc", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" - } + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + }, + "vertices": [] }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", + "block": "997db8c4-b772-49d8-83e7-4427aff720e6", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "port": "constant-out" }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 4 + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" + } } ] } } }, - "84f0a15761ee8b753f67079819a7614923939472": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "name": "Rising-edge-detector", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { - "name": "3", - "clock": false + "name": "", + "clock": true }, "position": { - "x": 80, - "y": 64 + "x": 152, + "y": 152 } }, { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, + { + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", "data": { - "name": "2", + "name": "", "clock": false }, "position": { - "x": 80, - "y": 136 + "x": 152, + "y": 280 } }, { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 712, - "y": 200 + "x": 840, + "y": 400 } }, { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "type": "basic.input", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "name": "1", - "clock": false + "info": "## Rising edge detector\n\nIt generates a 1-period pulse (tic) when a rising edge is detected on the \ninput signal", + "readonly": true }, "position": { - "x": 80, - "y": 208 + "x": 176, + "y": -16 + }, + "size": { + "width": 568, + "height": 80 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "name": "0", - "clock": false + "info": "Input signal", + "readonly": true }, "position": { - "x": 80, - "y": 272 + "x": 160, + "y": 256 + }, + "size": { + "width": 136, + "height": 40 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" - } - ], - "out": [ - { - "name": "o", - "range": "[3:0]", - "size": 4 - } - ] - } + "info": "System clock", + "readonly": true }, "position": { - "x": 296, - "y": 176 + "x": 168, + "y": 120 + }, + "size": { + "width": 96, + "height": 48 + } + }, + { + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", + "data": { + "info": "Current signal \nstate", + "readonly": true + }, + "position": { + "x": 328, + "y": 456 + }, + "size": { + "width": 168, + "height": 48 + } + }, + { + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, + "position": { + "x": 328, + "y": 200 + }, + "size": { + "width": 248, + "height": 48 + } + }, + { + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "If the current signal is 1 and its value in \nthe previous clock cycle was 0, it means \nthat a rising edge has been detected! \nThe output es 1\n\nIn any other case the output is 0", + "readonly": true + }, + "position": { + "x": 728, + "y": 256 }, "size": { "width": 344, - "height": 104 + "height": 96 + } + }, + { + "id": "c3990bfd-57a6-4602-ab46-800486326dd6", + "type": "basic.info", + "data": { + "info": "**Delay**: 0 clock cycles \n\nThere is no delay between the arrival of a rising edge \nand its detection", + "readonly": true + }, + "position": { + "x": 528, + "y": 504 + }, + "size": { + "width": 416, + "height": 88 + } + }, + { + "id": "70cfa680-3def-482c-b194-054c1f522357", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "position": { + "x": 552, + "y": 280 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "position": { + "x": 696, + "y": 400 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", + "position": { + "x": 320, + "y": 264 + }, + "size": { + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, { "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "block": "2708468d-1088-4570-be63-fb0d4799a941", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" + "block": "70cfa680-3def-482c-b194-054c1f522357", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } + }, + { + "source": { + "block": "70cfa680-3def-482c-b194-054c1f522357", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] + "target": { + "block": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] + "block": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", "port": "in" - }, - "size": 4 + } } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "nc" }, "position": { - "x": 352, - "y": -264 + "x": 816, + "y": 112 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "type": "basic.outputLabel", + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "", + "clock": true }, "position": { - "x": 584, - "y": -128 + "x": 208, + "y": 184 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 856, - "y": -56 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "rst", - "clock": false - }, - "position": { - "x": 200, - "y": -56 + "x": 816, + "y": 232 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", "type": "basic.input", "data": { - "name": "d", + "name": "", "clock": false }, "position": { - "x": 200, - "y": 80 + "x": 208, + "y": 280 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", "type": "basic.constant", "data": { "name": "", @@ -4347,715 +4567,692 @@ "local": false }, "position": { - "x": 712, - "y": -160 + "x": 512, + "y": 64 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true - }, - "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ + { + "name": "INI" + } + ], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, "position": { - "x": 360, - "y": -56 + "x": 488, + "y": 32 }, "size": { - "width": 96, - "height": 64 + "width": 208, + "height": 40 } }, { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, "position": { - "x": 536, - "y": -40 + "x": 208, + "y": 160 }, "size": { - "width": 96, - "height": 64 + "width": 120, + "height": 32 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", "type": "basic.info", "data": { - "info": "Data input", + "info": "Input data", "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 224, + "y": 256 }, "size": { - "width": 104, + "width": 112, "height": 40 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", "type": "basic.info", "data": { - "info": "System clock", + "info": "Output", "readonly": true }, "position": { - "x": 208, - "y": -304 + "x": 840, + "y": 200 }, "size": { - "width": 144, + "width": 80, "height": 40 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", "type": "basic.info", "data": { - "info": "Initial default \nvalue: 0", + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", "readonly": true }, "position": { - "x": 720, - "y": -200 + "x": 144, + "y": -136 }, "size": { - "width": 152, - "height": 64 + "width": 488, + "height": 104 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, "position": { - "x": 712, - "y": -56 + "x": 808, + "y": 88 }, "size": { - "width": 96, - "height": 64 + "width": 176, + "height": 32 } } ], "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" - }, - "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "port": "outlabel" - }, - "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - }, - "vertices": [] - }, - { - "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", "port": "out" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" } }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "port": "out" + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" } }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" } }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" } } ] } } }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { + "091b3514573becaa7196cc3f7854140e5773864d": { "package": { - "name": "Bus16-Split-quarter", - "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", "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" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 }, "design": { "graph": { "blocks": [ { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", "data": { - "name": "3", - "range": "[3:0]", - "size": 4 + "name": "", + "clock": true }, "position": { - "x": 608, - "y": 64 + "x": 128, + "y": 232 } }, { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "type": "basic.output", + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", "data": { - "name": "2", - "range": "[3:0]", - "size": 4 + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 640, - "y": 208 + "x": 280, + "y": 232 } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", + "id": "626e14a3-68ca-440d-b469-aeb6a69bddcb", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 96, - "y": 224 + "x": 472, + "y": 368 } }, { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", + "id": "1b2fe6f0-f08f-44d2-824a-e5205b3e9fab", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 608, - "y": 312 + "x": 888, + "y": 384 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "s" }, "position": { - "x": 552, - "y": 400 + "x": 1200, + "y": 456 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 - } - ] - } + "name": "pin", + "clock": false }, "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 160 + "x": 152, + "y": 472 } - } - ], - "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" + "id": "07e7cb88-d87c-4aa3-9938-fc226e3f4815", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 336, + "y": 360 + } }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "port": "in" + "id": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 768, + "y": 368 + } }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" - }, - "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "port": "in" + "id": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", + "type": "6c3affc36ce9207db9e9addcade0eb18994ddf4a", + "position": { + "x": 336, + "y": 472 }, - "size": 4 + "size": { + "width": 96, + "height": 64 + } }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" - }, - "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "port": "in" - }, - "size": 4 - } - ] - } - } - }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { - "package": { - "name": "Bus16-Join-quarter", - "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "6ca11b45-e83b-492d-b175-8ab8f1faa08a", + "type": "basic.info", "data": { - "name": "3", - "range": "[3:0]", - "clock": false, - "size": 4 + "info": "Internal pull-up \n* 0: OFF\n* 1: ON", + "readonly": true }, "position": { - "x": 104, - "y": 104 + "x": 320, + "y": 560 + }, + "size": { + "width": 176, + "height": 72 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "2349cf1c-768c-483c-bdf3-852e36755326", + "type": "basic.info", "data": { - "name": "2", - "range": "[3:0]", - "clock": false, - "size": 4 + "info": "Synchronization stage", + "readonly": true }, "position": { - "x": 104, - "y": 184 + "x": 552, + "y": 536 + }, + "size": { + "width": 184, + "height": 32 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "c13f29d4-49ed-45ca-bf58-401682aa156c", + "type": "basic.info", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "info": "Normalization stage\n\n* 0: Wire\n* 1: signal inverted", + "readonly": true }, "position": { - "x": 720, - "y": 224 + "x": 760, + "y": 560 + }, + "size": { + "width": 192, + "height": 88 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "9207da36-adfa-43d6-a633-ccaa601b9293", + "type": "basic.info", "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 + "info": "Debouncing stage", + "readonly": true }, "position": { - "x": 104, - "y": 248 + "x": 1016, + "y": 544 + }, + "size": { + "width": 168, + "height": 40 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 104, - "y": 312 + "x": 768, + "y": 472 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", + "position": { + "x": 1032, + "y": 456 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 296, - "y": 176 + "x": 600, + "y": 456 }, "size": { - "width": 344, - "height": 160 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "port": "out" }, "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" + "block": "c2136078-81d0-4137-8583-c122b93cbdb0", + "port": "inlabel" }, - "size": 16 + "vertices": [] }, { "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" + "block": "626e14a3-68ca-440d-b469-aeb6a69bddcb", + "port": "outlabel" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" + } + }, + { + "source": { + "block": "1b2fe6f0-f08f-44d2-824a-e5205b3e9fab", + "port": "outlabel" }, - "size": 4 + "target": { + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" + } }, { "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" + "block": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", + "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, - "size": 4 + "vertices": [] }, { "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 + "vertices": [] }, { "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" + "block": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 + "vertices": [] + }, + { + "source": { + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" + }, + "vertices": [] + }, + { + "source": { + "block": "07e7cb88-d87c-4aa3-9938-fc226e3f4815", + "port": "constant-out" + }, + "target": { + "block": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", + "port": "121930e0-54c3-4b31-aa37-b33c7764abfa" + } + }, + { + "source": { + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" + }, + "target": { + "block": "93b888bf-453e-4c9c-8f58-6b9c6d54d5de", + "port": "bb4a1ca9-1b30-471e-92ca-ca7ff2fc1150" + } } ] } } }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "6c3affc36ce9207db9e9addcade0eb18994ddf4a": { "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "Pull-upx1", + "version": "1.0.2", + "description": "FPGA internal pull-up configuration on the input port", + "author": "Juan González", + "image": "%3Csvg%20id=%22svg2%22%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-265%20401.5%2063.5%2038.4%22%3E%3Cstyle%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3Cpath%20class=%22st0%22%20d=%22M-242.5%20411.8v11.8h-5.4v-11.8h5.4m1-1h-7.4v13.8h7.4v-13.8z%22/%3E%3Cpath%20d=%22M-212%20425.6l-15.4-8.7v8.5h-17.4v-2.7c0-.2-.1-.4-.3-.4l-2.3-1.2%205.6-2.9c.2-.1.3-.3.3-.5s-.1-.4-.3-.4l-5.7-2.7%202.4-1.6c.1-.1.2-.2.2-.4v-2.7h3.1l-3.5-6.1-3.5%206.1h3v2.5l-2.9%202c-.1.1-.2.3-.2.5s.1.3.3.4l5.6%202.6-5.6%202.9c-.2.1-.3.3-.3.4s.1.4.3.4l2.9%201.5V425.5H-265v1.2h37.6v8.5l15.4-8.7h10.5v-.8H-212zm-33.3-20.4l2.2%203.9h-4.5l2.3-3.9zm19.2%2027.7v-13.8l12.3%206.9-12.3%206.9z%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "bb4a1ca9-1b30-471e-92ca-ca7ff2fc1150", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 72, + "y": 256 + } + }, + { + "id": "a139fa0d-9b45-4480-a251-f4a66b49aa23", "type": "basic.output", "data": { - "name": "c" + "name": "" }, "position": { - "x": 624, - "y": -168 + "x": 704, + "y": 256 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "type": "basic.input", + "id": "121930e0-54c3-4b31-aa37-b33c7764abfa", + "type": "basic.constant", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "on", + "value": "1", + "local": false }, "position": { - "x": 280, - "y": -152 + "x": 408, + "y": -8 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "2b245a71-2d80-466b-955f-e3d61839fe25", + "type": "basic.code", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "code": "// 1-Pull up\n\n//-- Place the IO block, configured as \n//-- input with pull-up\nSB_IO\n #(\n .PIN_TYPE(6'b 1010_01),\n \n //-- The pull-up is activated or not\n //-- depeding on the ON parameter\n .PULLUP(ON)\n \n ) input_pin (\n\n //--- Input pin\n .PACKAGE_PIN(i),\n \n //-- Block output\n .D_IN_0(o),\n \n //-- Configured as input\n .OUTPUT_ENABLE(1'b0),\n \n //-- Not used\n .D_OUT_0(1'b0)\n );", + "params": [ + { + "name": "ON" + } + ], + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o" + } + ] + } }, "position": { - "x": 624, - "y": -104 + "x": 256, + "y": 104 + }, + "size": { + "width": 392, + "height": 368 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", + "id": "8055c1f2-dad2-4257-a271-c0bd64700cd7", + "type": "basic.info", "data": { - "name": "", - "value": "1", - "local": true + "info": "### Pull-up parameter:\n\n0: No pull-up \n1: Pull-up activated", + "readonly": true }, "position": { - "x": 456, - "y": -256 + "x": 144, + "y": -48 + }, + "size": { + "width": 264, + "height": 104 } }, { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "id": "5a96e53f-d2ff-4058-bbed-779876848487", + "type": "basic.info", + "data": { + "info": "Only an FPGA pin can \nbe connected here!!!", + "readonly": true + }, "position": { - "x": 456, - "y": -152 + "x": 56, + "y": 200 }, "size": { - "width": 96, - "height": 64 + "width": 192, + "height": 56 + } + }, + { + "id": "26b0a2d0-aaa1-4204-9e57-2f2d674e03a0", + "type": "basic.info", + "data": { + "info": "The pull-up is connected \nby default", + "readonly": true + }, + "position": { + "x": 512, + "y": 0 + }, + "size": { + "width": 208, + "height": 56 } } ], "wires": [ { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "bb4a1ca9-1b30-471e-92ca-ca7ff2fc1150", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "2b245a71-2d80-466b-955f-e3d61839fe25", + "port": "i" } }, { "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "block": "2b245a71-2d80-466b-955f-e3d61839fe25", + "port": "o" }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + "block": "a139fa0d-9b45-4480-a251-f4a66b49aa23", + "port": "in" } }, { "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" - }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" - }, - "size": 16 - }, - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" + "block": "121930e0-54c3-4b31-aa37-b33c7764abfa", + "port": "constant-out" }, "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 + "block": "2b245a71-2d80-466b-955f-e3d61839fe25", + "port": "ON" + } } ] } } }, - "26569688c377bf52132e5f1de5a15da7143d9388": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { @@ -5064,71 +5261,88 @@ "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "c" + "name": "" }, "position": { - "x": 624, - "y": -168 + "x": 824, + "y": 304 } }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "name": "", + "clock": false }, "position": { - "x": 624, - "y": -96 + "x": 376, + "y": 320 } }, { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "not", + "value": "0", + "local": false }, "position": { - "x": 232, - "y": -56 + "x": 520, + "y": 160 } }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", + "position": { + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "name": "", - "value": "0", - "local": false + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": 232, - "y": -272 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", + "data": { + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true + }, "position": { - "x": 232, - "y": -168 + "x": 728, + "y": 8 }, "size": { - "width": 96, - "height": 64 + "width": 296, + "height": 144 } }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 456, - "y": -152 + "x": 672, + "y": 304 }, "size": { "width": 96, @@ -5139,79 +5353,65 @@ "wires": [ { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", "port": "constant-out" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "block": "160f76e9-4d8d-424e-8689-bb890101823c", "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - } + }, + "vertices": [] }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" - }, - "size": 16 + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "port": "out" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" - }, - "size": 16 + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" - }, - "size": 16 + } } ] } } }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "" }, "position": { "x": 960, @@ -5245,9 +5445,7 @@ "in": [], "out": [ { - "name": "k", - "range": "[15:0]", - "size": 16 + "name": "k" } ] } @@ -5279,2684 +5477,61 @@ "port": "k" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", "port": "in" - }, - "size": 16 + } } ] } } }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "d1240143e1ff7afe57f0f11565da980612b2bb76": { "package": { - "name": "Adder-16bits", - "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -664 - } - }, - { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "type": "basic.outputLabel", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "a1", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "name": "" }, "position": { - "x": 352, - "y": -664 + "x": 120, + "y": 48 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", "type": "basic.output", "data": { - "name": "c" + "name": "" }, "position": { - "x": 960, - "y": -608 + "x": 560, + "y": 72 } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "id": "97b51945-d716-4b6c-9db9-970d08541249", "type": "basic.input", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "" }, "position": { - "x": -320, - "y": -608 + "x": 120, + "y": 104 } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "type": "basic.inputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -592 - } - }, - { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 - }, - "position": { - "x": 352, - "y": -584 - } - }, - { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 - }, - "position": { - "x": 960, - "y": -544 - } - }, - { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -472 - } - }, - { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 - }, - "position": { - "x": 184, - "y": -472 - } - }, - { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": -320, - "y": -424 - } - }, - { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -408 - } - }, - { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 - }, - "position": { - "x": 184, - "y": -408 - } - }, - { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -608 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", - "position": { - "x": 352, - "y": -456 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", - "position": { - "x": 520, - "y": -600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", - "position": { - "x": 760, - "y": -544 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", - "port": "outlabel" - }, - "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" - }, - "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "port": "outlabel" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } - }, - { - "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" - }, - "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 - }, - { - "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" - }, - "size": 8 - } - ] - } - } - }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { - "package": { - "name": "Bus16-Split-half", - "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", - "data": { - "name": "1", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 608, - "y": 176 - } - }, - { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 - }, - "position": { - "x": 96, - "y": 208 - } - }, - { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "type": "basic.output", - "data": { - "name": "0", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 608, - "y": 272 - } - }, - { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] - } - }, - "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "port": "in" - }, - "size": 8 - } - ] - } - } - }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { - "package": { - "name": "Adder-8bits", - "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 16, - "y": -688 - } - }, - { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "type": "basic.outputLabel", - "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 - }, - "position": { - "x": 352, - "y": -664 - } - }, - { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -312, - "y": -632 - } - }, - { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "type": "basic.inputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 16, - "y": -616 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 960, - "y": -608 - } - }, - { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 352, - "y": -584 - } - }, - { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "type": "basic.output", - "data": { - "name": "s", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 960, - "y": -544 - } - }, - { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 - }, - "position": { - "x": 184, - "y": -472 - } - }, - { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -440 - } - }, - { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 184, - "y": -408 - } - }, - { - "id": "63477487-9493-4058-a7e1-9bab443ec466", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -320, - "y": -384 - } - }, - { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -368 - } - }, - { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -168, - "y": -384 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -152, - "y": -632 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", - "position": { - "x": 352, - "y": -456 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 760, - "y": -544 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", - "position": { - "x": 520, - "y": -600 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", - "port": "outlabel" - }, - "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "port": "outlabel" - }, - "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "port": "outlabel" - }, - "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "port": "outlabel" - }, - "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" - }, - "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" - }, - "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" - }, - "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 - }, - { - "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" - }, - "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } - } - ] - } - } - }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { - "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ - { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 584, - "y": 104 - } - }, - { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 120, - "y": 208 - } - }, - { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", - "data": { - "name": "0", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 584, - "y": 232 - } - }, - { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 - } - ] - } - }, - "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 - } - ] - } - } - }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { - "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -744 - } - }, - { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" - }, - "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 920, - "y": -696 - } - }, - { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -688 - } - }, - { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 576, - "y": -672 - } - }, - { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -632 - } - }, - { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -312, - "y": -632 - } - }, - { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" - }, - "position": { - "x": 456, - "y": -584 - } - }, - { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -576 - } - }, - { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -528 - } - }, - { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -8, - "y": -448 - } - }, - { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 328, - "y": -440 - } - }, - { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -8, - "y": -384 - } - }, - { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -312, - "y": -384 - } - }, - { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" - }, - "position": { - "x": 328, - "y": -376 - } - }, - { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1064, - "y": -368 - } - }, - { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": -16, - "y": -320 - } - }, - { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 184, - "y": -296 - } - }, - { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -32, - "y": -264 - } - }, - { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 184, - "y": -232 - } - }, - { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 744, - "y": -688 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } - }, - { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" - }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" - }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } - }, - { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" - } - }, - { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" - }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" - }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" - }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] - }, - { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - } - }, - { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] - }, - { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 280, - "y": -224 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 616, - "y": -176 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 280, - "y": -152 - } - }, - { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" - }, - "position": { - "x": 616, - "y": -96 - } - }, - { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 456, - "y": -168 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", - "position": { - "x": 304, - "y": -64 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] - }, - { - "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 504, - "y": -208 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "a", - "clock": false - }, - "position": { - "x": 136, - "y": -192 - } - }, - { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": -192 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 1112, - "y": -176 - } - }, - { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 504, - "y": -144 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false - }, - "position": { - "x": 136, - "y": -120 - } - }, - { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": -120 - } - }, - { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 648, - "y": -96 - } - }, - { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false - }, - "position": { - "x": 136, - "y": -40 - } - }, - { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": -40 - } - }, - { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 480, - "y": 24 - } - }, - { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" - }, - "position": { - "x": 992, - "y": 56 - } - }, - { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 480, - "y": 88 - } - }, - { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 648, - "y": 120 - } - }, - { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 832, - "y": 56 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 808, - "y": -80 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 632, - "y": -192 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 960, - "y": -176 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" - } - }, - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", - "port": "inlabel" - } - }, - { - "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", - "port": "out" - }, - "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "port": "inlabel" - } - }, - { - "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", - "port": "outlabel" - }, - "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", - "port": "outlabel" - }, - "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" - }, - "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "port": "outlabel" - }, - "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" - }, - "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" - }, - "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - }, - { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - } - ] - } - } - }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { - "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" - }, - "position": { - "x": 120, - "y": 48 - } - }, - { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 560, - "y": 72 - } - }, - { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" - }, - "position": { - "x": 120, - "y": 104 - } - }, - { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", "data": { "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", "params": [], @@ -8021,1014 +5596,832 @@ } } }, - "873425949b2a80f1a7f66f320796bcd068a59889": { + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "type": "basic.input", "data": { - "name": "" + "name": "", + "clock": true }, "position": { - "x": 112, - "y": 40 + "x": -376, + "y": -656 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 608, - "y": 72 + "x": -224, + "y": -656 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "type": "basic.output", "data": { "name": "" }, "position": { - "x": 112, - "y": 96 + "x": 952, + "y": -600 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "blockColor": "fuchsia", + "name": "out" }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 312, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" - }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" - } - }, - { - "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" - }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "x": 816, + "y": -600 } }, { - "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" - }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { - "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", "data": { - "name": "" + "name": "", + "clock": false }, "position": { - "x": 456, - "y": 120 + "x": -376, + "y": -584 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "blockColor": "fuchsia", + "name": "in" }, "position": { - "x": 168, - "y": 112 - }, - "size": { - "width": 248, - "height": 80 + "x": -224, + "y": -584 } - } - ], - "wires": [ + }, { - "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" - } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": 552, + "y": -440 + } + }, { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", - "type": "basic.input", + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, "position": { - "x": 128, - "y": 168 + "x": 840, + "y": -352 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "type": "basic.output", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 640, - "y": 200 + "x": 536, + "y": -352 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "type": "basic.input", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 128, - "y": 224 + "x": 384, + "y": -288 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - } + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 + "x": 112, + "y": -248 + } + }, + { + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 272, - "height": 104 + "position": { + "x": 112, + "y": -176 } - } - ], - "wires": [ + }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", + "data": { + "info": "Edge detector", + "readonly": true }, - "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "port": "in" + "position": { + "x": 240, + "y": -120 }, - "size": 8 + "size": { + "width": 128, + "height": 40 + } }, { - "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", - "port": "out" + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", + "data": { + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "position": { + "x": 368, + "y": -88 }, - "size": 4 + "size": { + "width": 288, + "height": 56 + } }, { - "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "port": "out" + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", + "type": "basic.info", + "data": { + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", + "readonly": true }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "position": { + "x": 720, + "y": -456 }, - "size": 4 - } - ] - } - } - }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { - "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + "size": { + "width": 304, + "height": 72 + } + }, { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, "position": { - "x": 8, - "y": -744 + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, "position": { - "x": 576, - "y": -736 + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", "data": { - "name": "c" + "info": "Stable output", + "readonly": true }, "position": { - "x": 920, - "y": -696 + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "info": "Counter", + "readonly": true }, "position": { - "x": 8, - "y": -688 + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" - }, + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", "position": { - "x": 576, - "y": -672 + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", "position": { - "x": 8, - "y": -632 + "x": 704, + "y": -368 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", "position": { - "x": -312, - "y": -632 + "x": 520, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "source": { + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "port": "out" }, - "position": { - "x": 456, - "y": -584 + "target": { + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "port": "inlabel" } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" }, - "position": { - "x": 8, - "y": -576 + "target": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" }, - "position": { - "x": 456, - "y": -528 + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "port": "outlabel" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "port": "outlabel" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": -312, - "y": -384 + "target": { + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", + "port": "inlabel" } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "port": "outlabel" }, - "position": { - "x": 328, - "y": -376 + "target": { + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" } }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "source": { + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" }, - "position": { - "x": 1064, - "y": -368 + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" }, - "position": { - "x": -16, - "y": -320 - } + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" + }, + "vertices": [] }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "source": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + }, + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + } + } + ] + } + } + }, + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { + "package": { + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": 184, - "y": -296 + "x": 624, + "y": 120 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "2708468d-1088-4570-be63-fb0d4799a941", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "clock": true }, "position": { - "x": -32, - "y": -264 + "x": 88, + "y": 152 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "name": "", + "clock": false }, "position": { - "x": 184, - "y": -232 + "x": 88, + "y": 280 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "name": "ci", - "clock": false + "name": "" }, "position": { - "x": -296, - "y": -168 + "x": 616, + "y": 352 } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", + "data": { + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true + }, "position": { - "x": 464, - "y": -392 + "x": 104, + "y": -40 }, "size": { - "width": 96, + "width": 648, "height": 96 } }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", + "data": { + "info": "Input signal", + "readonly": true + }, "position": { - "x": 608, - "y": -544 + "x": 96, + "y": 256 }, "size": { - "width": 96, - "height": 96 + "width": 136, + "height": 40 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, "position": { - "x": -168, - "y": -416 + "x": 104, + "y": 120 }, "size": { "width": 96, - "height": 128 + "height": 48 } }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", + "data": { + "info": "Current signal \nstate", + "readonly": true + }, "position": { - "x": -152, - "y": -664 + "x": 160, + "y": 352 }, "size": { - "width": 96, - "height": 128 + "width": 168, + "height": 48 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, "position": { - "x": 896, - "y": -400 + "x": 328, + "y": 200 }, "size": { - "width": 96, - "height": 128 + "width": 248, + "height": 48 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true + }, "position": { - "x": 744, - "y": -688 + "x": 504, + "y": 264 }, "size": { - "width": 96, - "height": 96 + "width": 400, + "height": 72 } }, { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 320, - "y": -248 + "x": 480, + "y": 352 }, "size": { "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } - }, - { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" - }, - "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" - }, - "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" + "height": 64 } }, { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "position": { + "x": 520, + "y": 432 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "size": { + "width": 296, + "height": 40 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", + "position": { + "x": 320, + "y": 264 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "size": { + "width": 96, + "height": 64 } - }, + } + ], + "wires": [ { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, { "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "block": "2708468d-1088-4570-be63-fb0d4799a941", + "port": "out" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "port": "in" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": -24, - "y": -696 + "x": 264, + "y": 368 } ] - }, - { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, + } + ] + } + } + }, + "8a23ffd0491010ff595493182b82c722bd6902d7": { + "package": { + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 128, + "y": 424 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "d", + "clock": false }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 128, + "y": 536 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 824, + "y": 536 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "type": "basic.input", + "data": { + "name": "load", + "clock": false }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 128, + "y": 648 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 488, + "y": 280 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + "position": { + "x": 320, + "y": 400 }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ { "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", "port": "out" }, "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" + } }, { "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "port": "out" }, "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" + } }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" }, "target": { "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", @@ -9037,335 +6430,259 @@ }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" } } ] } } }, - "c3c498191b14e9288a85fa2871b3966665f75475": { + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 }, "design": { "graph": { "blocks": [ { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 216, + "y": -120 + } + }, + { + "id": "0a772657-8018-424d-8f04-75d3ffff3692", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[3:0]", + "blockColor": "yellow", + "name": "clk", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", "name": "", "value": "" } ], - "virtual": true, - "blockColor": "deeppink" + "virtual": true }, "position": { - "x": -64, - "y": -648 + "x": 368, + "y": -120 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "type": "basic.input", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": -408, - "y": -584 + "x": 384, + "y": -32 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "type": "basic.inputLabel", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -64, - "y": -568 + "x": 1040, + "y": -32 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", "type": "basic.output", "data": { - "name": "c" + "name": "q", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 832, - "y": -480 + "x": 1216, + "y": -32 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "type": "basic.output", + "data": { + "name": "max" + }, + "position": { + "x": 1208, + "y": 56 + } + }, + { + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": 248, - "y": -456 + "x": 1048, + "y": 56 } }, { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "type": "basic.input", + "data": { + "name": "rst", + "clock": false + }, + "position": { + "x": 216, + "y": 56 + } + }, + { + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "name": "q", + "range": "[15:0]", "pins": [ { - "index": "3", + "index": "15", "name": "", "value": "" }, { - "index": "2", + "index": "14", "name": "", "value": "" }, { - "index": "1", + "index": "13", "name": "", "value": "" }, { - "index": "0", + "index": "12", "name": "", "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": -80, - "y": -448 - } - }, - { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -400, - "y": -392 - } - }, - { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ + }, { - "index": "3", + "index": "11", "name": "", "value": "" }, { - "index": "2", + "index": "10", "name": "", "value": "" }, { - "index": "1", + "index": "9", "name": "", "value": "" }, { - "index": "0", + "index": "8", "name": "", "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": -80, - "y": -376 - } - }, - { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 248, - "y": -376 - } - }, - { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "type": "basic.output", - "data": { - "name": "s", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 840, - "y": -336 - } - }, - { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 120, - "y": -304 + "x": 712, + "y": 88 } }, { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "type": "basic.outputLabel", + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 120, - "y": -232 - } - }, - { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false - }, - "position": { - "x": -392, - "y": -168 - } - }, - { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -248, - "y": -392 + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": -240, - "y": -584 - }, - "size": { - "width": 96, - "height": 64 + "x": 856, + "y": 144 } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 688, - "y": -336 + "x": 720, + "y": 160 }, "size": { "width": 96, @@ -9373,23 +6690,11 @@ } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": 464, - "y": -392 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -9400,483 +6705,305 @@ "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" }, - "size": 4 + "vertices": [] }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", "port": "inlabel" }, - "size": 4 - }, - { - "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "port": "outlabel" - }, - "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" - }, - "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], - "size": 4 - }, - { - "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", - "port": "outlabel" - }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "vertices": [] }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], - "size": 4 - }, - { - "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" - }, - "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "size": 8 + "size": 16 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "port": "outlabel" }, - "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "port": "in" + "target": { + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "size": 8 + "size": 16 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, - "size": 4 + "vertices": [], + "size": 16 }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": 624, - "y": -392 + "x": 840, + "y": 264 } - ] + ], + "size": 16 } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { "package": { - "name": "Bus16-Join-half", + "name": "Inc1-16bits", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "Inc1-16bit: Increment a 16-bits number by one", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "c" }, "position": { - "x": 120, - "y": 168 + "x": 624, + "y": -168 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", "data": { "name": "", "range": "[15:0]", + "clock": false, "size": 16 }, "position": { - "x": 632, - "y": 200 + "x": 280, + "y": -152 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "type": "basic.input", + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 120, - "y": 264 + "x": 624, + "y": -104 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "name": "", + "value": "1", + "local": true }, "position": { - "x": 296, - "y": 176 + "x": 456, + "y": -256 + } + }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 }, "size": { - "width": 272, - "height": 104 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" + } + }, + { + "source": { + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, - "size": 16 + "target": { + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "size": 8 + "size": 16 }, { "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "size": 8 + "size": 16 } ] } } }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", + "name": "AdderK-16bits", + "version": "0.1", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 88, - "y": 152 - } - }, - { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 88, - "y": 280 - } - }, - { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" - }, - "position": { - "x": 616, - "y": 352 - } - }, - { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", - "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true - }, - "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 - } - }, - { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", - "data": { - "info": "Input signal", - "readonly": true - }, - "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 - } - }, - { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true + "name": "c" }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 624, + "y": -168 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "type": "basic.output", "data": { - "info": "Current signal \nstate", - "readonly": true + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 624, + "y": -96 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "type": "basic.input", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 328, - "y": 200 - }, - "size": { - "width": 248, - "height": 48 + "x": 232, + "y": -56 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", - "type": "basic.info", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", - "readonly": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": 504, - "y": 264 - }, - "size": { - "width": 400, - "height": 72 + "x": 232, + "y": -272 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 480, - "y": 352 + "x": 232, + "y": -168 }, "size": { "width": 96, @@ -9884,27 +7011,11 @@ } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", - "type": "basic.info", - "data": { - "info": "In any other case the output is 0", - "readonly": true - }, - "position": { - "x": 520, - "y": 432 - }, - "size": { - "width": 296, - "height": 40 - } - }, - { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": 320, - "y": 264 + "x": 456, + "y": -152 }, "size": { "width": 96, @@ -9915,330 +7026,531 @@ "wires": [ { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "vertices": [ - { - "x": 264, - "y": 368 - } - ] + "size": 16 } ] } } }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { + "651fa32fcf52b534a766fdb2ba638a010338f268": { "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "type": "basic.input", + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[15:0]", + "size": 16 }, "position": { - "x": -256, - "y": -56 + "x": 960, + "y": 248 + } + }, + { + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 728, + "y": 128 + } + }, + { + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", + "data": { + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k", + "range": "[15:0]", + "size": 16 + } + ] + } + }, + "position": { + "x": 672, + "y": 248 + }, + "size": { + "width": 208, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" + }, + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "e226f910-14af-473d-956b-03559f466726", + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" + }, + "target": { + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "port": "in" + }, + "size": 16 + } + ] + } + } + }, + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "package": { + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[7:0]", "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true - }, - "position": { - "x": -104, - "y": -56 - } - }, - { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 128, - "y": 32 + "x": 8, + "y": -664 } }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": -56, - "y": 72 + "x": 352, + "y": -664 } }, { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 424, - "y": 128 + "x": 960, + "y": -608 } }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": -64, - "y": 160 + "x": -320, + "y": -608 } }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 104, - "y": 144 + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", + "data": { + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", "position": { - "x": 280, - "y": 128 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" - }, - "target": { - "block": "e226f910-14af-473d-956b-03559f466726", - "port": "inlabel" - } - }, - { - "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", - "port": "outlabel" - }, - "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "x": 8, + "y": -592 } }, { - "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", - "port": "outlabel" + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, - "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "position": { + "x": 352, + "y": -584 } }, { - "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "port": "out" + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "position": { + "x": 960, + "y": -544 } }, { - "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "position": { + "x": 8, + "y": -472 } }, { - "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" - } - } - ] - } - } - }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { - "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 824, - "y": 304 + "x": 184, + "y": -472 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 376, - "y": 320 + "x": -320, + "y": -424 } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", "data": { - "name": "not", - "value": "0", - "local": false + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 520, - "y": 160 + "x": 8, + "y": -408 } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 632, - "y": 392 + "x": 184, + "y": -408 + } + }, + { + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -424 }, "size": { - "width": 336, - "height": 96 + "width": 96, + "height": 64 } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", - "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true - }, + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 728, - "y": 8 + "x": -168, + "y": -608 }, "size": { - "width": 296, - "height": 144 + "width": 96, + "height": 64 } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", "position": { - "x": 672, - "y": 304 + "x": 352, + "y": -456 }, "size": { "width": 96, @@ -10246,11 +7558,23 @@ } }, { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", "position": { "x": 520, - "y": 256 + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, @@ -10261,308 +7585,453 @@ "wires": [ { "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" + }, + "size": 8 + }, { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" + }, + "target": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" + }, + "target": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 960, - "y": 248 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 728, - "y": 128 + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" }, - "position": { - "x": 672, - "y": 248 + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" }, - "size": { - "width": 208, - "height": 64 - } - } - ], - "wires": [ + "size": 16 + }, { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" - } + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" }, "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", "port": "in" - } + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 } ] } } }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "name": "Adder-8bits", + "version": "0.1", + "description": "Adder-8bits: Adder of two operands of 8 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 216, - "y": -40 + "x": 16, + "y": -688 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "a1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 368, - "y": -40 + "x": 352, + "y": -664 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", "type": "basic.input", "data": { - "name": "data", - "range": "[15:0]", + "name": "", + "range": "[7:0]", "clock": false, - "size": 16 + "size": 8 }, "position": { - "x": 200, - "y": 128 + "x": -312, + "y": -632 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "name": "a0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 344, - "y": 128 + "x": 16, + "y": -616 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 960, + "y": -608 + } + }, + { + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", + "name": "b1", + "range": "[3:0]", "blockColor": "fuchsia", - "size": 16 + "size": 4 }, "position": { - "x": 560, - "y": 128 + "x": 352, + "y": -584 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", "type": "basic.output", "data": { - "name": "LED", + "name": "s", "range": "[7:0]", "size": 8 }, "position": { - "x": 1136, - "y": 144 + "x": 960, + "y": -544 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 600, - "y": 240 + "x": 184, + "y": -472 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", "data": { - "name": "byte" + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 1208, - "y": 296 + "x": 8, + "y": -440 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", "type": "basic.outputLabel", "data": { + "name": "b0", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 600, - "y": 312 + "x": 184, + "y": -408 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "63477487-9493-4058-a7e1-9bab443ec466", "type": "basic.input", "data": { - "name": "sel", - "clock": false + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 200, - "y": 320 + "x": -320, + "y": -384 } }, { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 344, - "y": 320 - } - }, - { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", - "data": { - "name": "b0" + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 1216, - "y": 376 + "x": 8, + "y": -368 } }, { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 1064, - "y": 376 + "x": -168, + "y": -384 }, "size": { "width": 96, @@ -10570,27 +8039,23 @@ } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", - "type": "basic.info", - "data": { - "info": "Byte 0 \n(least significant) ", - "readonly": true - }, + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 1344, - "y": 376 + "x": -152, + "y": -632 }, "size": { - "width": 184, - "height": 56 + "width": 96, + "height": 64 } }, { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", "position": { - "x": 744, - "y": 296 + "x": 352, + "y": -456 }, "size": { "width": 96, @@ -10598,312 +8063,546 @@ } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 952, - "y": 128 + "x": 760, + "y": -544 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 720, - "y": 128 + "x": 520, + "y": -600 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", "port": "inlabel" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", "port": "inlabel" - } + }, + "size": 4 }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" - } + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", - "port": "inlabel" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": 16 + "size": 4 }, { "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", "port": "outlabel" }, "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "size": 16 + "size": 4 }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "63477487-9493-4058-a7e1-9bab443ec466", + "port": "out" + }, + "target": { + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, "size": 8 }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "port": "out" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, - "size": 8 + "size": 4 }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 8 + "size": 4 }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } } ] } } }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", + "name": "Adder-4bits", + "version": "0.1", + "description": "Adder-4bits: Adder of two operands of 4 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -744 + } + }, + { + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" + }, + "position": { + "x": 576, + "y": -736 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 920, + "y": -696 + } + }, + { + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -688 + } + }, + { + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", "oldBlockColor": "fuchsia" }, "position": { - "x": 456, - "y": -160 + "x": 576, + "y": -672 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -632 + } + }, + { + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", "type": "basic.input", "data": { "name": "", - "clock": true + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 80, - "y": -112 + "x": -312, + "y": -632 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" + }, + "position": { + "x": 456, + "y": -584 + } + }, + { + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 232, - "y": -112 + "x": 8, + "y": -576 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 456, + "y": -528 + } + }, + { + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -8, + "y": -448 + } + }, + { + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 328, + "y": -440 + } + }, + { + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -8, + "y": -384 + } + }, + { + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { - "name": "" + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 800, - "y": -112 + "x": -312, + "y": -384 } }, { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", "type": "basic.outputLabel", "data": { - "name": "next", - "blockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "b1" }, "position": { - "x": 464, - "y": -64 + "x": 328, + "y": -376 } }, { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", "data": { - "name": "", - "clock": false + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 80, - "y": -40 + "x": 1064, + "y": -368 } }, { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", + "id": "527c9113-e440-454b-b427-182b646c10f5", "type": "basic.inputLabel", "data": { - "name": "toggle", - "blockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 224, - "y": -40 + "x": -16, + "y": -320 } }, { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", "data": { - "name": "next", - "blockColor": "fuchsia" + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 16 + "x": 184, + "y": -296 } }, { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", "data": { - "name": "toggle", - "blockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 464, - "y": 32 + "x": -32, + "y": -264 } }, { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 600, + "x": 184, "y": -232 } }, { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", "position": { - "x": 736, - "y": 16 + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -10911,492 +8610,382 @@ } }, { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 600, - "y": -80 + "x": 464, + "y": -392 }, "size": { "width": 96, "height": 96 } - } - ], - "wires": [ - { - "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] }, { - "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 608, + "y": -544 }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + "size": { + "width": 96, + "height": 96 } }, { - "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -168, + "y": -416 }, - "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "port": "inlabel" + "size": { + "width": 96, + "height": 128 } }, { - "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" + "size": { + "width": 96, + "height": 128 } }, { - "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 }, - "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" + "size": { + "width": 96, + "height": 128 } }, { - "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "size": { + "width": 96, + "height": 96 } - }, - { - "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, + } + ], + "wires": [ { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } - } - ] - } - } - }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { - "package": { - "name": "1-bit-reg", - "version": "0.1", - "description": "Reg: 1-Bit register", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": 440 - } - }, - { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 224, - "y": 440 - } - }, - { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", - "clock": false + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 80, - "y": 552 + "target": { + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" } }, { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 232, - "y": 552 + "target": { + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" } }, { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" + "source": { + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, - "position": { - "x": 456, - "y": 552 + "target": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, - "position": { - "x": 1296, - "y": 592 + "target": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 1152, - "y": 592 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "position": { - "x": 928, - "y": 600 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 456, - "y": 616 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 232, - "y": 632 + "target": { + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "type": "basic.input", - "data": { - "name": "load", - "clock": false + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 80, - "y": 632 + "target": { + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "type": "basic.outputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "fuchsia" + "source": { + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "position": { - "x": 456, - "y": 688 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, - "position": { - "x": 784, - "y": 504 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, - "position": { - "x": 640, - "y": 712 + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "size": { - "width": 104, - "height": 40 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 776, - "y": 680 + "target": { + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "size": { - "width": 120, - "height": 48 - } + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", - "position": { - "x": 616, - "y": 600 + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 784, - "y": 600 + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ], - "wires": [ + }, { "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } }, { "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "port": "outlabel" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + } }, { "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" - }, - "vertices": [] + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + } }, { "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] + }, + { + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", - "port": "inlabel" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", - "port": "inlabel" - } + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } + "size": 4 }, { "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" }, "vertices": [ { - "x": 576, - "y": 600 + "x": 728, + "y": -552 } ] }, { "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - }, - "vertices": [] + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } } ] } } }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { "package": { - "name": "MuxF-2-1", + "name": "Adder-1bit", "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", + "description": "Adder-1bit: Adder of two operands of 1 bit", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { @@ -11405,246 +8994,231 @@ "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "0", + "name": "", "clock": false }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, "position": { "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 + "y": -224 } }, { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 704, - "y": 496 + "x": 616, + "y": -176 } }, { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "clock": false }, "position": { "x": 280, - "y": 504 + "y": -152 } }, { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "name": "1", - "clock": false + "name": "s" }, "position": { - "x": 144, - "y": 504 + "x": 616, + "y": -96 } }, { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 416, - "y": 568 + "x": 456, + "y": -168 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 576, - "y": 480 + "x": 304, + "y": -64 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "port": "out" }, "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "port": "out" }, "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } + "vertices": [ + { + "x": 400, + "y": -168 + } + ] }, { "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" }, "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" } } ] } } }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { "package": { - "name": "Mux-2-1", + "name": "AdderC-1bit", "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", "name": "a" }, "position": { - "x": 456, - "y": 360 + "x": 504, + "y": -208 } }, { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "a", + "clock": false + }, + "position": { + "x": 136, + "y": -192 + } + }, + { + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -192 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" + }, + "position": { + "x": 1112, + "y": -176 + } + }, + { + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b" }, "position": { - "x": 1096, - "y": 392 + "x": 504, + "y": -144 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { - "name": "1", + "name": "b", "clock": false }, "position": { "x": 136, - "y": 416 + "y": -120 } }, { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "a", + "name": "b", "pins": [ { "index": "0", @@ -11656,15 +9230,40 @@ }, "position": { "x": 272, - "y": 416 + "y": -120 } }, { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": -96 + } + }, + { + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false + }, + "position": { + "x": 136, + "y": -40 + } + }, + { + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "b", + "blockColor": "navy", + "name": "ci", "pins": [ { "index": "0", @@ -11677,52 +9276,63 @@ }, "position": { "x": 272, - "y": 528 + "y": -40 } }, { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", + "type": "basic.outputLabel", "data": { - "name": "0", - "clock": false + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 136, - "y": 528 + "x": 480, + "y": 24 } }, { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 992, + "y": 56 + } + }, + { + "id": "edf4525b-edd8-40fa-b784-631b102fb907", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" + "name": "b" }, "position": { - "x": 616, - "y": 552 + "x": 480, + "y": 88 } }, { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", "data": { - "name": "sel", - "clock": false + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" }, "position": { - "x": 376, - "y": 656 + "x": 648, + "y": 120 } }, { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 952, - "y": 392 + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -11730,11 +9340,11 @@ } }, { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 600, - "y": 376 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -11742,11 +9352,11 @@ } }, { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 624, - "y": 656 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -11754,11 +9364,23 @@ } }, { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 784, - "y": 568 + "x": 632, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "position": { + "x": 960, + "y": -176 }, "size": { "width": 96, @@ -11769,355 +9391,584 @@ "wires": [ { "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "port": "inlabel" + } + }, + { + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, - "vertices": [] + "target": { + "block": "65936289-69ce-4e26-be4e-44f8a3706934", + "port": "inlabel" + } }, { "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" + }, + "target": { + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "port": "inlabel" + } + }, + { + "source": { + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", "port": "outlabel" }, "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } + }, + { + "source": { + "block": "edf4525b-edd8-40fa-b784-631b102fb907", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "port": "outlabel" }, "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "port": "outlabel" }, "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "port": "outlabel" }, "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } + }, + { + "source": { + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } + }, + { + "source": { + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "vertices": [] + "target": { + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] + } }, { "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } + }, + { + "source": { + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] + } }, { "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + } + ] + } + } + }, + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { + "package": { + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", + "data": { + "name": "" }, - "vertices": [] + "position": { + "x": 456, + "y": 120 + } }, + { + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", + "data": { + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 168, + "y": 112 + }, + "size": { + "width": 248, + "height": 80 + } + } + ], + "wires": [ { "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" + } } ] } } }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { "package": { - "name": "8-bits-Mux-2-1", + "name": "AdderC-4bits", "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -744 + } + }, + { + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 768, - "y": 192 + "x": 576, + "y": -736 } }, { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 920, + "y": -696 + } + }, + { + "id": "73a0a48e-d345-4eda-8603-782e9865d928", "type": "basic.inputLabel", "data": { - "name": "A1", - "range": "[3:0]", + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -688 + } + }, + { + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { "blockColor": "fuchsia", - "size": 4 + "name": "b3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 552, - "y": 208 + "x": 576, + "y": -672 } }, { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -632 + } + }, + { + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", "type": "basic.input", "data": { - "name": "1", - "range": "[7:0]", + "name": "", + "range": "[3:0]", "clock": false, - "size": 8 + "size": 4 }, "position": { - "x": 200, - "y": 264 + "x": -312, + "y": -632 } }, { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", "type": "basic.outputLabel", "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 768, - "y": 264 + "x": 456, + "y": -584 } }, { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "name": "A0", - "range": "[3:0]", + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 8, + "y": -576 + } + }, + { + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { "blockColor": "fuchsia", - "size": 4 + "name": "b2", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 456, + "y": -528 + } + }, + { + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 544, - "y": 280 + "x": -8, + "y": -448 } }, { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "sel", + "blockColor": "deeppink", + "name": "a1", "oldBlockColor": "fuchsia" }, "position": { - "x": 808, - "y": 416 + "x": 328, + "y": -440 } }, { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1336, - "y": 432 + "x": -8, + "y": -384 } }, { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { - "name": "B1", + "name": "", "range": "[3:0]", - "blockColor": "lightseagreen", + "clock": false, "size": 4 }, "position": { - "x": 584, - "y": 528 + "x": -312, + "y": -384 } }, { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", "type": "basic.outputLabel", "data": { - "name": "A0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "b1" }, "position": { - "x": 808, - "y": 552 + "x": 328, + "y": -376 } }, { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 208, - "y": 592 + "x": 1064, + "y": -368 } }, { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "id": "527c9113-e440-454b-b427-182b646c10f5", "type": "basic.inputLabel", "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 584, - "y": 608 + "x": -16, + "y": -320 } }, { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "type": "basic.outputLabel", "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 808, - "y": 616 + "x": 184, + "y": -296 } }, { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", "data": { - "blockColor": "navy", - "name": "sel", + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 808, - "y": 680 + "x": -32, + "y": -264 } }, { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", "data": { - "name": "sel", - "clock": false + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 392, - "y": 768 + "x": 184, + "y": -232 } }, { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" + "name": "ci", + "clock": false }, "position": { - "x": 552, - "y": 768 + "x": -296, + "y": -168 } }, { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 424, - "y": 512 + "x": 464, + "y": -392 }, "size": { - "width": 144, - "height": 32 + "width": 96, + "height": 96 } }, { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 968, - "y": 568 + "x": 608, + "y": -544 }, "size": { "width": 96, @@ -12125,63 +9976,59 @@ } }, { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 424, - "y": 168 + "x": -168, + "y": -416 }, "size": { - "width": 144, - "height": 32 + "width": 96, + "height": 128 } }, { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 1152, - "y": 432 + "x": -152, + "y": -664 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 376, - "y": 264 + "x": 896, + "y": -400 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 392, - "y": 592 + "x": 744, + "y": -688 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 960, - "y": 248 + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -12189,1427 +10036,1311 @@ } } ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, + "wires": [ { "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", "port": "outlabel" }, "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" + } }, { "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } }, { "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" + } }, { "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" + } }, { "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" + } }, { "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, "vertices": [ { - "x": 1088, - "y": 360 + "x": -24, + "y": -696 } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } + ] }, { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, - "position": { - "x": 712, - "y": 0 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "position": { - "x": 712, - "y": 72 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 712, - "y": 160 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 440, - "y": 224 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 712, - "y": 232 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 120, - "y": 240 - } + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 432, - "y": 296 - } + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" + "source": { + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, - "position": { - "x": 712, - "y": 304 - } + "target": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 416, - "y": 360 - } + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" + }, + "size": 4 }, { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 712, - "y": 400 - } + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] }, { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 1256, - "y": 416 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 456, - "y": 464 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" + "source": { + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, - "position": { - "x": 712, - "y": 488 + "target": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - }, + } + ] + } + } + }, + "c3c498191b14e9288a85fa2871b3966665f75475": { + "package": { + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", "type": "basic.inputLabel", "data": { - "blockColor": "turquoise", - "name": "B2", + "name": "a1", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "turquoise" + "blockColor": "deeppink" }, "position": { - "x": 464, - "y": 528 + "x": -64, + "y": -648 } }, { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", + "name": "", + "range": "[7:0]", "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" + "size": 8 }, "position": { - "x": 712, - "y": 560 + "x": -408, + "y": -584 } }, { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", "type": "basic.inputLabel", "data": { - "blockColor": "turquoise", - "name": "B1", + "name": "a0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "fuchsia" + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 464, - "y": 592 + "x": -64, + "y": -568 } }, { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 832, + "y": -480 + } + }, + { + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "A0" + "name": "a1", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 720, - "y": 648 + "x": 248, + "y": -456 } }, { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", "type": "basic.inputLabel", "data": { - "blockColor": "turquoise", - "name": "B0", + "name": "b1", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia" }, "position": { - "x": 720, - "y": 720 + "x": -80, + "y": -448 } }, { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", "type": "basic.input", "data": { - "name": "sel", - "clock": false + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 104, - "y": 728 + "x": -400, + "y": -392 } }, { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "type": "basic.inputLabel", "data": { - "blockColor": "navy", - "name": "sel", + "name": "b0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia" }, "position": { - "x": 264, - "y": 728 + "x": -80, + "y": -376 } }, { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 712, - "y": 800 + "x": 248, + "y": -376 } }, { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "type": "basic.output", + "data": { + "name": "s", + "range": "[7:0]", + "size": 8 }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 840, + "y": -336 } }, { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 120, + "y": -304 } }, { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "type": "basic.outputLabel", "data": { - "info": "Channel A", - "readonly": true + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 + "x": 120, + "y": -232 } }, { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "info": "Channel B", - "readonly": true + "name": "ci", + "clock": false }, "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 + "x": -392, + "y": -168 } }, { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 856, - "y": 216 + "x": -248, + "y": -392 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 1040, - "y": 384 + "x": -240, + "y": -584 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 856, - "y": -16 + "x": 688, + "y": -336 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 288, - "y": 512 + "x": 320, + "y": -248 }, "size": { "width": 96, - "height": 128 + "height": 96 } }, { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 280, - "y": 208 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 128 + "height": 96 } } ], "wires": [ { "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } + "size": 4 }, { "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } + "size": 4 }, { "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", "port": "outlabel" }, "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } + "size": 4 }, { "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", "port": "outlabel" }, "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "vertices": [] + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 }, { "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", "port": "outlabel" }, "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", "port": "outlabel" }, "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 }, { "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } }, { "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" }, "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" }, "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] + "size": 8 }, { "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", "port": "in" }, - "size": 4 + "size": 8 }, { "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, "size": 4 }, { "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" }, - "size": 4 + "vertices": [ + { + "x": 624, + "y": -392 + } + ] } ] } } }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 + }, + "position": { + "x": 120, + "y": 168 + } + }, + { + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", "type": "basic.output", "data": { "name": "", - "virtual": true, "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "size": 16 + }, + "position": { + "x": 632, + "y": 200 + } + }, + { + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "type": "basic.input", + "data": { + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 + }, + "position": { + "x": 120, + "y": 264 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "i0", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + } + }, + "position": { + "x": 296, + "y": 176 + }, + "size": { + "width": 272, + "height": 104 + } + } + ], + "wires": [ + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" + }, + "target": { + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 8 + }, + { + "source": { + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" + }, + "size": 8 + } + ] + } + } + }, + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { + "package": { + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", + "data": { + "name": "nc" }, "position": { - "x": 496, - "y": 80 + "x": 920, + "y": -24 } }, { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 920, + "y": 56 + } + }, + { + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", "type": "basic.input", "data": { "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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 + "clock": true }, "position": { - "x": -16, - "y": 80 + "x": 368, + "y": 64 } }, { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", "data": { - "info": "Input", - "readonly": true + "name": "rst", + "clock": false }, "position": { - "x": 24, - "y": 56 + "x": 376, + "y": 200 + } + }, + { + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "size": { - "width": 80, - "height": 40 + "position": { + "x": 920, + "y": 200 } }, { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "type": "basic.input", "data": { - "info": "Output", - "readonly": true + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 512, - "y": 48 + "x": 376, + "y": 336 + } + }, + { + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": { - "width": 80, - "height": 40 + "position": { + "x": 656, + "y": -80 } }, { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i", + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", "range": "[15:0]", "size": 16 } ], "out": [ { - "name": "o", + "name": "q", "range": "[15:0]", "size": 16 } ] }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 176, - "y": 64 + "x": 528, + "y": 32 }, "size": { - "width": 232, - "height": 96 + "width": 344, + "height": 400 } } ], "wires": [ { "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" }, "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", "port": "in" }, + "vertices": [], "size": 16 }, { "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" + }, + "vertices": [] + }, + { + "source": { + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", "port": "out" }, "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" + } + }, + { + "source": { + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" }, "size": 16 + }, + { + "source": { + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" + } } ] } } }, - "7c11d5cc7618a6b401d063cad119437ad92a9e3a": { + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { "package": { - "name": "Copy-12-verilog", - "version": "0.2", - "description": "Copy-12: Copy the input wire twice and generate a 12 bits Bus output (Verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 384, + "y": -80 + } + }, + { + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "type": "basic.input", "data": { "name": "", - "clock": false + "clock": true }, "position": { - "x": 448, - "y": 176 + "x": -136, + "y": -16 } }, { - "id": "7de16813-6379-4a6c-ba12-33b214f72148", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 384, + "y": 56 + } + }, + { + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", "data": { "name": "", - "range": "[11:0]", - "size": 12 + "clock": false }, "position": { - "x": 992, - "y": 176 + "x": -136, + "y": 128 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", "type": "basic.code", "data": { + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], "ports": { "in": [ { - "name": "i" + "name": "clk" + }, + { + "name": "d" } ], "out": [ { - "name": "o", - "range": "[11:0]", - "size": 12 + "name": "q" } ] - }, - "params": [], - "code": "//-- Number of bits\nlocalparam N=12;\n\nassign o = {N{i}};\n" + } }, "position": { - "x": 632, - "y": 144 + "x": 32, + "y": -56 }, "size": { - "width": 288, - "height": 120 + "width": 296, + "height": 288 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "port": "out" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" } }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" }, "target": { - "block": "7de16813-6379-4a6c-ba12-33b214f72148", - "port": "in" + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" + } + }, + { + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" }, - "size": 12 + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } } ] } } }, - "4fc848aa2b04b2243e5e28eabf26b49e5498efca": { + "bd9ec1610b279c1105c609d204f99c1b7523c228": { "package": { - "name": "UINT16-12bit-verilog", - "version": "0.1", - "description": "UINT32-12bit-verilog: Extend a 12-bit unsigned integer to 32-bits. Verilog implementation ", + "name": "12-Uint16", + "version": "0.4", + "description": "12-Uint16: 12 bits unsigned integer extension to 16 bits. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1621785467119 @@ -13618,174 +11349,29 @@ "graph": { "blocks": [ { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", "type": "basic.output", "data": { "name": "", - "virtual": true, "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "size": 16 }, "position": { - "x": 920, - "y": 304 + "x": 952, + "y": 368 } }, { - "id": "61aae1ae-d521-4d00-ad3e-dc03583ede97", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", "type": "basic.input", "data": { - "name": "i", - "virtual": true, + "name": "", "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 + "size": 12 }, "position": { - "x": 352, - "y": 304 + "x": 336, + "y": 368 } }, { @@ -13809,15 +11395,15 @@ ] }, "params": [], - "code": "//-- Number of bits\nlocalparam N = 12;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "code": "//-- Number of input bits\nlocalparam X = 12;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 512, + "x": 504, "y": 272 }, "size": { - "width": 344, - "height": 120 + "width": 384, + "height": 248 } } ], @@ -13828,14 +11414,14 @@ "port": "o" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", "port": "in" }, "size": 16 }, { "source": { - "block": "61aae1ae-d521-4d00-ad3e-dc03583ede97", + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", "port": "out" }, "target": { diff --git a/examples/TESTs/Uint/Uint16/13-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/13-bits/Alhambra-II/01-Manual-testing.ice index dc2689c8..8e8af43a 100644 --- a/examples/TESTs/Uint/Uint16/13-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/13-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-13bit Manual testing", + "info": "## 13-Uint16 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,23 +154,23 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "a81fa7a1-0d10-4fae-882a-9857f81ba11e", + "type": "1ff618ba669e7fdbcb1bada5c000eab17c45c0f9", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "3b54f2c9-67cf-4b02-a73b-22e1d9b713ee", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 728, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -178,22 +178,22 @@ } }, { - "id": "d366efc8-814e-4631-9681-add9860d743a", - "type": "aceaf4f9f5d3279978cebbca36e76014b64d73ac", + "id": "bc9ff37d-0980-4f21-95e1-ca9f7a695f2f", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 544, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "a81fa7a1-0d10-4fae-882a-9857f81ba11e", - "type": "1ff618ba669e7fdbcb1bada5c000eab17c45c0f9", + "id": "378f8ce6-af0c-41c5-8dec-2e33490e2c33", + "type": "db99a67dfc5891eea24c3214c0a232094f338a60", "position": { - "x": 344, + "x": 544, "y": 56 }, "size": { @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "bc9ff37d-0980-4f21-95e1-ca9f7a695f2f", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "bc9ff37d-0980-4f21-95e1-ca9f7a695f2f", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "3b54f2c9-67cf-4b02-a73b-22e1d9b713ee", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "3b54f2c9-67cf-4b02-a73b-22e1d9b713ee", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "bc9ff37d-0980-4f21-95e1-ca9f7a695f2f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "bc9ff37d-0980-4f21-95e1-ca9f7a695f2f", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "d366efc8-814e-4631-9681-add9860d743a", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "378f8ce6-af0c-41c5-8dec-2e33490e2c33", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "d24701db-e0d1-4a99-b4e0-0f4a33d8d396" }, "target": { - "block": "d366efc8-814e-4631-9681-add9860d743a", - "port": "e95b5383-3325-4fdb-bf63-98691178661c" + "block": "378f8ce6-af0c-41c5-8dec-2e33490e2c33", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 13 } @@ -291,175 +291,629 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 744, - "y": 136 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", - "data": { - "name": "Press" + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 1024, - "y": 168 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" }, - "position": { - "x": 304, - "y": 200 - } - }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "1ff618ba669e7fdbcb1bada5c000eab17c45c0f9": { + "package": { + "name": "Copy-13-verilog", + "version": "0.2", + "description": "Copy-13: Copy the input wire twice and generate a 13 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "d24701db-e0d1-4a99-b4e0-0f4a33d8d396", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "virtual": true, + "range": "[12:0]", + "pins": [ + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[12:0]", + "size": 13 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=13;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", - "data": { - "info": "Tic: button pressed", - "readonly": true + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" }, - "position": { - "x": 1024, - "y": 152 + "target": { + "block": "d24701db-e0d1-4a99-b4e0-0f4a33d8d396", + "port": "in" }, - "size": { - "width": 184, - "height": 40 - } - }, + "size": 13 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 + } + }, + { + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 744, + "y": 136 + } + }, + { + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" + }, + "position": { + "x": 1032, + "y": 184 + } + }, + { + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 304, + "y": 200 + } + }, + { + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false + }, + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false + }, + "position": { + "x": 560, + "y": 56 + } + }, + { + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true + }, + "position": { + "x": 720, + "y": -32 + }, + "size": { + "width": 176, + "height": 40 + } + }, + { + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true + }, + "position": { + "x": 1024, + "y": 152 + }, + "size": { + "width": 184, + "height": 40 + } + }, { "id": "88b26983-667f-40de-b1c6-c6710a7bbd4a", "type": "basic.info", @@ -509,8 +963,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +975,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +1005,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +1021,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +1031,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +1047,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1072,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1082,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1090,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1113,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -795,11 +1260,11 @@ } }, { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "70cfa680-3def-482c-b194-054c1f522357", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 320, - "y": 264 + "x": 552, + "y": 280 }, "size": { "width": 96, @@ -807,11 +1272,11 @@ } }, { - "id": "70cfa680-3def-482c-b194-054c1f522357", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 552, - "y": 264 + "x": 696, + "y": 400 }, "size": { "width": 96, @@ -819,11 +1284,11 @@ } }, { - "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 696, - "y": 400 + "x": 320, + "y": 264 }, "size": { "width": 96, @@ -838,7 +1303,7 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1313,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,285 +1361,65 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { + "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { - "name": "DFF", + "name": "NOT", "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" + "description": "NOT gate (Verilog implementation)", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": 208, - "y": 160 + "x": 112, + "y": 72 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 816, - "y": 224 + "x": 560, + "y": 72 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", + "type": "basic.code", "data": { - "name": "", - "clock": false + "code": "//-- NOT Gate\nassign q = ~a;\n\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 208, - "y": 304 - } - }, - { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, - "3676a00f3a70e406487ed14b901daf3e4984e63d": { - "package": { - "name": "NOT", - "version": "2.0", - "description": "NOT gate (Verilog implementation)", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" - }, - "position": { - "x": 112, - "y": 72 - } - }, - { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 560, - "y": 72 - } - }, - { - "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", - "type": "basic.code", - "data": { - "code": "//-- NOT Gate\nassign q = ~a;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 256, - "height": 104 + "x": 256, + "y": 48 + }, + "size": { + "width": 256, + "height": 104 } }, { @@ -1346,44 +1591,283 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "name": "" + }, + "position": { + "x": 816, + "y": 232 + } + }, + { + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, "position": { "x": 280, @@ -1412,8 +1896,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1908,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1945,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +2001,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +2017,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +2026,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +2038,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +2050,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2080,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2090,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2100,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2122,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2150,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,889 +2335,969 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": -376, - "y": -656 + "x": 824, + "y": 304 } }, { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "", + "clock": false }, "position": { - "x": -224, - "y": -656 + "x": 376, + "y": 320 } }, { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", - "type": "basic.output", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "name": "" + "name": "not", + "value": "0", + "local": false }, "position": { - "x": 952, - "y": -600 + "x": 520, + "y": 160 } }, { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 816, - "y": -600 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", - "type": "basic.input", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "name": "", - "clock": false + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": -376, - "y": -584 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": -224, - "y": -584 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 552, - "y": -440 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 840, - "y": -352 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 536, - "y": -352 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "position": { - "x": 384, - "y": -288 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 120, - "y": -232 + "x": 960, + "y": 248 } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 120, - "y": -160 + "x": 728, + "y": 128 } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", + "data": { + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } + }, "position": { - "x": 704, - "y": -368 + "x": 672, + "y": 248 }, "size": { - "width": 96, - "height": 96 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", - "data": { - "info": "Edge detector", - "readonly": true - }, - "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 - } - }, - { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", - "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true - }, - "position": { - "x": 376, - "y": -120 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 288, - "height": 56 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", - "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true - }, - "position": { - "x": 720, - "y": -456 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 304, - "height": 72 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true + "name": "" }, "position": { - "x": 432, - "y": -640 - }, - "size": { - "width": 360, - "height": 120 + "x": 120, + "y": 48 } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true + "name": "" }, "position": { - "x": -8, - "y": -648 - }, - "size": { - "width": 312, - "height": 128 + "x": 560, + "y": 72 } }, { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 104 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", "data": { - "info": "Counter", - "readonly": true - }, - "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 - } - }, - { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" } - }, + } + ] + } + } + }, + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { + "package": { + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": -376, + "y": -656 } }, { - "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", - "port": "out" + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, - "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" + "position": { + "x": -224, + "y": -656 } }, { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + "position": { + "x": 952, + "y": -600 } }, { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out" }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "position": { + "x": 816, + "y": -600 } }, { - "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" - }, - "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", - "port": "in" + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": -376, + "y": -584 } }, { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "in" }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "position": { + "x": -224, + "y": -584 } }, { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, - "vertices": [] + "position": { + "x": 552, + "y": -440 + } }, { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + "position": { + "x": 840, + "y": -352 } - } - ] - } - } - }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { - "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": 104 + "x": 536, + "y": -352 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": 192 + "x": 384, + "y": -288 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 192 + "x": 112, + "y": -248 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 240, - "y": 320 + "x": 112, + "y": -176 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "", - "value": "0", - "local": false + "info": "Edge detector", + "readonly": true }, "position": { - "x": 472, - "y": 56 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 384, - "y": 168 + "x": 368, + "y": -88 }, "size": { - "width": 272, - "height": 104 + "width": 288, + "height": 56 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", "type": "basic.info", "data": { - "info": "Initial value", + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", "readonly": true }, "position": { - "x": 480, - "y": 48 + "x": 720, + "y": -456 }, "size": { - "width": 136, - "height": 32 + "width": 304, + "height": 72 } - } - ], - "wires": [ + }, { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", + "data": { + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" + "position": { + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", + "data": { + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" + "position": { + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", + "data": { + "info": "Stable output", + "readonly": true }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "position": { + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", + "position": { + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", + "position": { + "x": 520, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "port": "out" + }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "port": "inlabel" + } + }, + { + "source": { + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" + }, + "target": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } + }, + { + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" + }, + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + } + }, + { + "source": { + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "port": "outlabel" + }, + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } + }, + { + "source": { + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" + }, + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" + } + }, + { + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "port": "outlabel" + }, + "target": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + } + }, + { + "source": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", + "port": "inlabel" + } + }, + { + "source": { + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "port": "outlabel" + }, + "target": { + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } + }, + { + "source": { + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" + }, + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" + }, + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" + }, + "vertices": [] + }, + { + "source": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + }, + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" } } ] } } }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 624, + "y": 120 + } + }, + { + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": -120 + "x": 88, + "y": 152 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "", + "clock": false }, "position": { - "x": 368, - "y": -120 + "x": 88, + "y": 280 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 384, - "y": -32 + "x": 616, + "y": 352 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": 1040, - "y": -32 + "x": 104, + "y": -40 + }, + "size": { + "width": 648, + "height": 96 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Input signal", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 96, + "y": 256 + }, + "size": { + "width": 136, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "max" + "info": "System clock", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 104, + "y": 120 + }, + "size": { + "width": 96, + "height": 48 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": 1048, - "y": 56 + "x": 160, + "y": 352 + }, + "size": { + "width": 168, + "height": 48 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "Signal state in the previous \nclock cycle", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 328, + "y": 200 + }, + "size": { + "width": 248, + "height": 48 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": 504, + "y": 264 + }, + "size": { + "width": 400, + "height": 72 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 856, - "y": 144 + "x": 480, + "y": 352 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 544, - "y": 40 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 720, - "y": 160 + "x": 320, + "y": 264 }, "size": { "width": 96, @@ -2744,243 +3308,276 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "2708468d-1088-4570-be63-fb0d4799a941", + "port": "out" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", "port": "in" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 - }, - "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "port": "inlabel" - }, - "size": 16 - }, - { - "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", - "port": "outlabel" - }, - "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 - }, - { - "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" - }, - "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" - }, - "vertices": [], - "size": 16 - }, - { - "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": 840, - "y": 264 + "x": 264, + "y": 368 } - ], - "size": 16 + ] } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "8a23ffd0491010ff595493182b82c722bd6902d7": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "", + "clock": true }, "position": { - "x": -136, - "y": -448 + "x": 128, + "y": 424 } }, { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "d", + "clock": false }, "position": { - "x": -136, - "y": -376 + "x": 128, + "y": 536 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 824, + "y": 536 + } + }, + { + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", "type": "basic.input", + "data": { + "name": "load", + "clock": false + }, + "position": { + "x": 128, + "y": 648 + } + }, + { + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", "data": { "name": "", - "clock": true + "value": "0", + "local": false }, "position": { - "x": -632, - "y": -264 + "x": 488, + "y": 280 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": -480, - "y": -264 + "x": 320, + "y": 400 + }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ + { + "source": { + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" + }, + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" } }, { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": -112, - "y": -216 + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "source": { + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" + }, + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } + }, + { + "source": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" + }, + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } + } + ] + } + } + }, + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { + "package": { + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "clock": true }, "position": { - "x": -624, - "y": -192 + "x": 216, + "y": -120 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", + "id": "0a772657-8018-424d-8f04-75d3ffff3692", "type": "basic.inputLabel", "data": { - "blockColor": "navy", - "name": "rst", + "blockColor": "yellow", + "name": "clk", "pins": [ { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true }, "position": { - "x": -480, - "y": -192 - } - }, - { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -144 + "x": 368, + "y": -120 } }, { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2988,142 +3585,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": -112, - "y": -8 + "x": 384, + "y": -32 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -128, - "y": 72 + "x": 1040, + "y": -32 } }, { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", "type": "basic.output", "data": { - "name": "", + "name": "q", "range": "[15:0]", "size": 16 }, "position": { - "x": 568, - "y": 104 + "x": 1216, + "y": -32 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "max" }, "position": { - "x": -576, - "y": 136 + "x": 1208, + "y": 56 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": -128, - "y": 248 + "x": 1048, + "y": 56 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "type": "basic.input", "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, - "y": 352 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 40, - "y": 104 + "clock": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", "position": { - "x": -400, - "y": 104 - }, - "size": { - "width": 96, - "height": 128 + "x": 216, + "y": 56 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", - "position": { - "x": 384, - "y": 72 - }, - "size": { - "width": 96, - "height": 128 - } - }, + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" + }, + "position": { + "x": 712, + "y": 88 + } + }, + { + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 856, + "y": 144 + } + }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 48, - "y": -152 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": 64, - "y": -360 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3145,996 +3806,1096 @@ }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", "port": "inlabel" - } - }, - { - "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } - }, - { - "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] - }, - { - "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": -8, - "y": 376 - } - ] + "vertices": [] }, { "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", "port": "outlabel" }, "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - } - }, - { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } + "size": 16 }, { "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] + "size": 16 }, { "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "port": "out" }, "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" + } }, { "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, + "vertices": [], "size": 16 }, { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": -272, - "y": 368 + "x": 840, + "y": 264 } ], - "size": 4 - }, + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "size": 4 + "position": { + "x": 624, + "y": -168 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" - }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 + "position": { + "x": 280, + "y": -152 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "position": { + "x": 624, + "y": -104 + } + }, + { + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true + }, + "position": { + "x": 456, + "y": -256 + } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "size": 16 }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "size": 16 } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "DFF-rst-x04", + "name": "AdderK-16bits", "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "c" }, "position": { - "x": -160, - "y": -336 + "x": 624, + "y": -168 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": -168, - "y": -280 + "x": 624, + "y": -96 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "clock": true + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": -496, - "y": -256 + "x": 232, + "y": -56 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": -344, - "y": -256 + "x": 232, + "y": -272 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 112, - "y": -200 - } - }, - { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", - "data": { - "name": "rst", - "clock": false + "x": 232, + "y": -168 }, - "position": { - "x": -488, - "y": -184 + "size": { + "width": 96, + "height": 64 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "x": 456, + "y": -152 }, - "position": { - "x": 112, - "y": -112 + "size": { + "width": 96, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 376, - "y": -8 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "source": { + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, - "position": { - "x": 376, - "y": 80 + "target": { + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "source": { + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, - "position": { - "x": 1032, - "y": 184 - } + "target": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, - "position": { - "x": 528, - "y": 208 - } + "target": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "target": { + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "position": { - "x": 520, - "y": 264 - } - }, + "size": 16 + } + ] + } + } + }, + "651fa32fcf52b534a766fdb2ba638a010338f268": { + "package": { + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 960, + "y": 248 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 728, + "y": 128 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 272, - "y": -128 + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", + "data": { + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": -16, - "y": -296 + "x": 672, + "y": 248 }, "size": { - "width": 96, - "height": 96 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "port": "outlabel" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } - }, - { - "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "port": "in" }, - "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" - } - }, + "size": 16 + } + ] + } + } + }, + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "package": { + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "type": "basic.inputLabel", + "data": { + "name": "a1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -664 } }, { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "type": "basic.outputLabel", + "data": { + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 352, + "y": -664 } }, { - "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 960, + "y": -608 } }, { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "position": { + "x": -320, + "y": -608 } }, { - "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", + "data": { + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "position": { + "x": 8, + "y": -592 } }, { - "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 352, + "y": -584 } }, { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 960, + "y": -544 } }, { - "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "vertices": [ - { - "x": 712, - "y": 128 - } - ] + "position": { + "x": 8, + "y": -472 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 184, + "y": -472 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": -320, + "y": -424 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 8, + "y": -408 } }, { - "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] - }, - { - "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" - }, - "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - } - ] - } - } - }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { - "package": { - "name": "Bus4-Split-all", - "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { - "graph": { - "blocks": [ - { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "type": "basic.output", - "data": { - "name": "3" + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 576, - "y": 80 + "x": 184, + "y": -408 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", - "type": "basic.output", - "data": { - "name": "2" - }, + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 600, - "y": 144 + "x": -168, + "y": -424 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 128, - "y": 184 + "x": -168, + "y": -608 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", - "data": { - "name": "1" - }, + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", "position": { - "x": 592, - "y": 240 + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", "position": { - "x": 568, - "y": 296 + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", "position": { - "x": 296, - "y": 176 + "x": 760, + "y": -544 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "port": "in" - } + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 4 - } - ] - } - } - }, - "84f0a15761ee8b753f67079819a7614923939472": { - "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 }, - "position": { - "x": 80, - "y": 64 - } + "size": 8 }, { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false + "source": { + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, - "position": { - "x": 80, - "y": 136 + "target": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" + }, + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 712, - "y": 200 + "x": 608, + "y": 176 } }, { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", "type": "basic.input", "data": { - "name": "1", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 80, + "x": 96, "y": 208 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "type": "basic.output", "data": { "name": "0", - "clock": false + "range": "[7:0]", + "size": 8 }, "position": { - "x": 80, + "x": 608, "y": 272 } }, @@ -4142,384 +4903,563 @@ "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" + "name": "i", + "range": "[15:0]", + "size": 16 } ], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "o1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "o0", + "range": "[7:0]", + "size": 8 } ] } }, "position": { - "x": 296, + "x": 272, "y": 176 }, "size": { - "width": 344, - "height": 104 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", "port": "out" }, "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "port": "i" }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - } + "size": 16 }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" + "port": "o1" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "port": "in" }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "port": "o0" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-8bits", + "version": "0.1", + "description": "Adder-8bits: Adder of two operands of 8 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 16, + "y": -688 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { - "name": "" + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 856, - "y": -56 + "x": -312, + "y": -632 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "rst", - "clock": false + "name": "a0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": -56 + "x": 16, + "y": -616 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "d", - "clock": false + "name": "c" }, "position": { - "x": 200, - "y": 80 + "x": 960, + "y": -608 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 184, + "y": -472 } }, { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 536, - "y": -40 + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 8, + "y": -440 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "type": "basic.outputLabel", "data": { - "info": "Data input", - "readonly": true + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 216, - "y": 56 - }, - "size": { - "width": 104, - "height": 40 + "x": 184, + "y": -408 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "63477487-9493-4058-a7e1-9bab443ec466", + "type": "basic.input", "data": { - "info": "System clock", - "readonly": true + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 208, - "y": -304 - }, - "size": { - "width": 144, - "height": 40 + "x": -320, + "y": -384 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "type": "basic.inputLabel", "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 720, - "y": -200 - }, - "size": { - "width": 152, - "height": 64 + "x": 8, + "y": -368 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 712, - "y": -56 + "x": -168, + "y": -384 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -152, + "y": -632 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, "height": 64 } + }, + { + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } } ], "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", "port": "inlabel" }, - "vertices": [] + "size": 4 + }, + { + "source": { + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" + }, + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "63477487-9493-4058-a7e1-9bab443ec466", "port": "out" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", "port": "out" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 + }, + { + "source": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 + }, + { + "source": { + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + }, + "target": { + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "port": "in" + }, + "size": 8 + }, + { + "source": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", @@ -4528,23 +5468,23 @@ }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } } ] } } }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "Bus16-Split-quarter", + "name": "Bus8-Split-half", "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", "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" }, @@ -4552,60 +5492,34 @@ "graph": { "blocks": [ { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 608, - "y": 64 - } - }, - { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "2", + "name": "1", "range": "[3:0]", "size": 4 }, "position": { - "x": 640, - "y": 208 + "x": 584, + "y": 104 } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", + "range": "[7:0]", "clock": false, - "size": 16 - }, - "position": { - "x": 96, - "y": 224 - } - }, - { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "size": 8 }, "position": { - "x": 608, - "y": 312 + "x": 120, + "y": 208 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "type": "basic.output", "data": { "name": "0", @@ -4613,35 +5527,25 @@ "size": 4 }, "position": { - "x": 552, - "y": 400 + "x": 584, + "y": 232 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", "params": [], "ports": { "in": [ { "name": "i", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "size": 8 } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", "range": "[3:0]", @@ -4661,40 +5565,18 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", "port": "in" }, "size": 4 @@ -4702,1099 +5584,867 @@ { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "port": "o0" }, "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" }, "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "port": "in" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-4bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-4bits: Adder of two operands of 4 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", "data": { - "name": "3", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 8, + "y": -744 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", "data": { - "name": "2", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 104, - "y": 184 + "x": 576, + "y": -736 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "c" }, "position": { - "x": 720, - "y": 224 + "x": 920, + "y": -696 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 8, + "y": -688 + } + }, + { + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -632 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", "type": "basic.input", "data": { - "name": "0", + "name": "", "range": "[3:0]", "clock": false, "size": 4 }, "position": { - "x": 104, - "y": 312 + "x": -312, + "y": -632 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 + "x": 456, + "y": -584 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 4 + "position": { + "x": 8, + "y": -576 + } }, { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "size": 4 + "position": { + "x": 456, + "y": -528 + } }, { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 - }, - { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 624, - "y": -168 + "x": -8, + "y": -448 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "type": "basic.input", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -152 + "x": 328, + "y": -440 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 624, - "y": -104 + "x": -8, + "y": -384 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { "name": "", - "value": "1", - "local": true + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 456, - "y": -256 - } - }, - { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", - "position": { - "x": 456, - "y": -152 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "x": -312, + "y": -384 } }, { - "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + "position": { + "x": 328, + "y": -376 } }, { - "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" - }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" - }, - "size": 16 - }, - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" - }, - "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "type": "basic.output", "data": { - "name": "c" + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 624, - "y": -168 + "x": 1064, + "y": -368 } }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 624, - "y": -96 + "x": -16, + "y": -320 } }, { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 232, - "y": -56 + "x": 184, + "y": -296 } }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 232, - "y": -272 + "x": -32, + "y": -264 } }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 - }, + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 + } + }, + { + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 + }, "size": { "width": 96, "height": 64 } }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 456, - "y": -152 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 + } + }, + { + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 608, + "y": -544 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" } }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" - }, - "size": 16 + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" + } }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" - }, - "size": 16 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { - "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 960, - "y": 248 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 128 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k", - "range": "[15:0]", - "size": 16 - } - ] - } + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 672, - "y": 248 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "size": { - "width": 208, - "height": 64 + "target": { + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } - } - ], - "wires": [ + }, { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } + }, + { + "source": { + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, - "size": 16 - } - ] - } - } - }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { - "package": { - "name": "Adder-16bits", - "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 8, - "y": -664 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "type": "basic.outputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 352, - "y": -664 + "target": { + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" + }, + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, + { + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "position": { - "x": 960, - "y": -608 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": -320, - "y": -608 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "type": "basic.inputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 8, - "y": -592 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 352, - "y": -584 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 960, - "y": -544 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 8, - "y": -472 - } + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 184, - "y": -472 + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" + }, + "target": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" + }, + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" + }, + "size": 4 + }, + { + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } + } + ] + } + } + }, + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { + "package": { + "name": "Adder-1bit", + "version": "0.1", + "description": "Adder-1bit: Adder of two operands of 1 bit", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "clock": false }, "position": { - "x": -320, - "y": -424 + "x": 280, + "y": -224 } }, { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "type": "basic.inputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "b0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "name": "c" }, "position": { - "x": 8, - "y": -408 + "x": 616, + "y": -176 } }, { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "type": "basic.input", "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "clock": false }, "position": { - "x": 184, - "y": -408 + "x": 280, + "y": -152 } }, { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 616, + "y": -96 } }, { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": -168, - "y": -608 + "x": 456, + "y": -168 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 352, - "y": -456 + "x": 304, + "y": -64 }, "size": { "width": 96, "height": 64 } - }, + } + ], + "wires": [ { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", - "position": { - "x": 520, - "y": -600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", - "position": { - "x": 760, - "y": -544 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", - "port": "outlabel" - }, - "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "port": "outlabel" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": 8 + "vertices": [ + { + "x": 400, + "y": -168 + } + ] }, { "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -5804,474 +6454,229 @@ }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } - }, - { - "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" - }, - "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 - }, - { - "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" - }, - "size": 8 + } } ] } } }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { "package": { - "name": "Bus16-Split-half", + "name": "AdderC-1bit", "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 608, - "y": 176 + "x": 504, + "y": -208 } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "a", + "clock": false }, "position": { - "x": 96, - "y": 208 + "x": 136, + "y": -192 } }, { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -192 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "0", - "range": "[7:0]", - "size": 8 + "name": "c" }, "position": { - "x": 608, - "y": 272 + "x": 1112, + "y": -176 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "type": "basic.outputLabel", "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] - } + "blockColor": "fuchsia", + "name": "b" }, "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 120 + "x": 504, + "y": -144 } - } - ], - "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "port": "in" + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "type": "basic.input", + "data": { + "name": "b", + "clock": false }, - "size": 8 + "position": { + "x": 136, + "y": -120 + } }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "port": "in" - }, - "size": 8 - } - ] - } - } - }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { - "package": { - "name": "Adder-8bits", - "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "virtual": true }, "position": { - "x": 16, - "y": -688 + "x": 272, + "y": -120 } }, { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" }, "position": { - "x": 352, - "y": -664 + "x": 648, + "y": -96 } }, { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "ci", + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 136, + "y": -40 } }, { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "type": "basic.inputLabel", "data": { - "name": "a0", - "range": "[3:0]", + "blockColor": "navy", + "name": "ci", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 16, - "y": -616 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "oldBlockColor": "fuchsia" }, "position": { - "x": 960, - "y": -608 + "x": 272, + "y": -40 } }, { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "a" }, "position": { - "x": 352, - "y": -584 + "x": 480, + "y": 24 } }, { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", "type": "basic.output", "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "name": "s" }, "position": { - "x": 960, - "y": -544 + "x": 992, + "y": 56 } }, { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "id": "edf4525b-edd8-40fa-b784-631b102fb907", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "blockColor": "fuchsia", + "name": "b" }, "position": { - "x": 184, - "y": -472 + "x": 480, + "y": 88 } }, { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", - "type": "basic.inputLabel", + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -440 + "x": 648, + "y": 120 } }, { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 184, - "y": -408 - } - }, - { - "id": "63477487-9493-4058-a7e1-9bab443ec466", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -320, - "y": -384 - } - }, - { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -368 - } - }, - { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -168, - "y": -384 + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -6279,11 +6684,11 @@ } }, { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -632 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -6291,11 +6696,11 @@ } }, { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 352, - "y": -456 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -6303,11 +6708,11 @@ } }, { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 760, - "y": -544 + "x": 632, + "y": -192 }, "size": { "width": 96, @@ -6315,435 +6720,381 @@ } }, { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 520, - "y": -600 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "port": "outlabel" }, "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } } ] } } }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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" + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 104 + "x": 112, + "y": 40 } }, { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "" }, "position": { - "x": 120, - "y": 208 + "x": 608, + "y": 72 } }, { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 232 + "x": 112, + "y": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", "type": "basic.code", "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", "params": [], "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "a" + }, + { + "name": "b" } ], "out": [ { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 + "name": "c" } ] } }, "position": { - "x": 272, - "y": 176 + "x": 256, + "y": 48 }, "size": { - "width": 240, - "height": 120 + "width": 312, + "height": 104 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } } ] } } }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "" }, "position": { - "x": 8, - "y": -744 + "x": 456, + "y": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "x": 168, + "y": 112 }, - "position": { - "x": 920, - "y": -696 + "size": { + "width": 248, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "source": { + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, - "position": { - "x": 8, - "y": -688 + "target": { + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } - }, + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "3" }, "position": { "x": 576, - "y": -672 + "y": 80 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "2" }, "position": { - "x": 8, - "y": -632 + "x": 600, + "y": 144 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", "type": "basic.input", "data": { "name": "", @@ -6752,663 +7103,788 @@ "size": 4 }, "position": { - "x": -312, - "y": -632 + "x": 128, + "y": 184 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "1" }, "position": { - "x": 456, - "y": -584 + "x": 592, + "y": 240 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "0" }, "position": { - "x": 8, - "y": -576 + "x": 568, + "y": 296 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": 456, - "y": -528 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 + } + } + ], + "wires": [ + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" + }, + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "3", + "clock": false }, "position": { - "x": -312, - "y": -384 + "x": 80, + "y": 64 } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1" + "name": "2", + "clock": false }, "position": { - "x": 328, - "y": -376 + "x": 80, + "y": 136 } }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", "type": "basic.output", "data": { - "name": "s", + "name": "", "range": "[3:0]", "size": 4 }, "position": { - "x": 1064, - "y": -368 + "x": 712, + "y": 200 } }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "1", + "clock": false }, "position": { - "x": -16, - "y": -320 + "x": 80, + "y": 208 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "0", + "clock": false }, "position": { - "x": 184, - "y": -296 + "x": 80, + "y": 272 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } + }, "position": { - "x": -32, - "y": -264 + "x": 296, + "y": 176 + }, + "size": { + "width": 344, + "height": 104 } - }, + } + ], + "wires": [ { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "source": { + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, - "position": { - "x": 184, - "y": -232 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 + "source": { + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "source": { + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, - "size": { - "width": 96, - "height": 96 - } + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" + }, + "vertices": [ + { + "x": 200, + "y": 176 + } + ] }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "source": { + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, - "size": { - "width": 96, - "height": 96 - } + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" + }, + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, - "size": { - "width": 96, - "height": 128 + "target": { + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" + }, + "size": 4 + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 128, + "y": 168 } }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "size": { - "width": 96, - "height": 128 + "position": { + "x": 640, + "y": 200 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": { - "width": 96, - "height": 128 + "position": { + "x": 128, + "y": 224 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } + }, "position": { - "x": 744, - "y": -688 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 272, + "height": 104 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" + }, + "size": 4 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } - }, + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 4 + } + ] + } + } + }, + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "package": { + "name": "AdderC-4bits", + "version": "0.1", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 8, + "y": -744 } }, { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 576, + "y": -736 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" + "position": { + "x": 920, + "y": -696 } }, { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -688 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 576, + "y": -672 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 8, + "y": -632 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": -312, + "y": -632 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 456, + "y": -584 } }, { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -576 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" + "position": { + "x": 456, + "y": -528 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "position": { + "x": -8, + "y": -448 + } }, { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 328, + "y": -440 } }, { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": -8, + "y": -384 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": -312, + "y": -384 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 328, + "y": -376 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 1064, + "y": -368 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] - }, - { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": -16, + "y": -320 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -224 + "x": 184, + "y": -296 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": -176 + "x": -32, + "y": -264 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -152 + "x": 184, + "y": -232 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "name": "s" + "name": "ci", + "clock": false }, "position": { - "x": 616, - "y": -96 + "x": -296, + "y": -168 } }, { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 456, - "y": -168 + "x": 464, + "y": -392 }, "size": { "width": 96, @@ -7416,789 +7892,931 @@ } }, { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 304, - "y": -64 + "x": 608, + "y": -544 }, "size": { "width": 96, - "height": 64 + "height": 96 + } + }, + { + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 320, + "y": -248 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" + } }, { "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" } }, { "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 504, - "y": -208 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "a", - "clock": false + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "position": { - "x": 136, - "y": -192 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 272, - "y": -192 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 1112, - "y": -176 + "target": { + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 504, - "y": -144 + "target": { + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "source": { + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "position": { - "x": 136, - "y": -120 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, - "position": { - "x": 272, - "y": -120 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 648, - "y": -96 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false - }, - "position": { - "x": 136, - "y": -40 - } - }, - { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": -40 - } - }, - { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 480, - "y": 24 - } - }, - { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 992, - "y": 56 - } - }, - { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" + "target": { + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "position": { - "x": 480, - "y": 88 - } + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, - "position": { - "x": 648, - "y": 120 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 832, - "y": 56 + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 808, - "y": -80 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 632, - "y": -192 + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, - { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 960, - "y": -176 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", - "port": "inlabel" - } + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "port": "inlabel" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", - "port": "outlabel" + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", - "port": "outlabel" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" + }, + "size": 4 }, { "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] }, { "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "port": "outlabel" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - }, - { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" }, "position": { - "x": 120, - "y": 48 + "x": -64, + "y": -648 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "type": "basic.input", "data": { - "name": "" + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 560, - "y": 72 + "x": -408, + "y": -584 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 120, - "y": 104 + "x": -64, + "y": -568 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "name": "c" }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 272, - "height": 112 + "x": 832, + "y": -480 } - } - ], - "wires": [ + }, { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", + "data": { + "name": "a1", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "position": { + "x": 248, + "y": -456 } }, { - "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "position": { + "x": -80, + "y": -448 } }, { - "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", + "data": { + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": -400, + "y": -392 + } + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 112, - "y": 40 + "x": -80, + "y": -376 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 608, - "y": 72 + "x": 248, + "y": -376 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "type": "basic.output", "data": { - "name": "" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 112, - "y": 96 + "x": 840, + "y": -336 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "name": "a0", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 312, - "height": 104 + "x": 120, + "y": -304 } - } - ], - "wires": [ + }, { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "type": "basic.outputLabel", + "data": { + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "position": { + "x": 120, + "y": -232 } }, { - "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "position": { + "x": -392, + "y": -168 } }, { - "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -248, + "y": -392 }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "size": { + "width": 96, + "height": 64 } - } - ] - } - } - }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { - "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", - "data": { - "name": "" + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -240, + "y": -584 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 456, - "y": 120 + "x": 688, + "y": -336 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", - "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 320, + "y": -248 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 168, - "y": 112 + "x": 464, + "y": -392 }, "size": { - "width": 248, - "height": 80 + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" - } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "port": "outlabel" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 + }, + { + "source": { + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "port": "outlabel" + }, + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" + }, + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 + }, + { + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" + }, + "target": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" + }, + "target": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + }, + "target": { + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" + }, + "size": 8 + }, + { + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 + }, + { + "source": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 + }, + { + "source": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] + } + ] + } + } + }, + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "package": { + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" }, @@ -8206,44 +8824,44 @@ "graph": { "blocks": [ { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", "type": "basic.input", "data": { "name": "1", - "range": "[3:0]", + "range": "[7:0]", "clock": false, - "size": 4 + "size": 8 }, "position": { - "x": 128, + "x": 120, "y": 168 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", "type": "basic.output", "data": { "name": "", - "range": "[7:0]", - "size": 8 + "range": "[15:0]", + "size": 16 }, "position": { - "x": 640, + "x": 632, "y": 200 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", "type": "basic.input", "data": { "name": "0", - "range": "[3:0]", + "range": "[7:0]", "clock": false, - "size": 4 + "size": 8 }, "position": { - "x": 128, - "y": 224 + "x": 120, + "y": 264 } }, { @@ -8256,20 +8874,20 @@ "in": [ { "name": "i1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "i0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ], "out": [ { "name": "o", - "range": "[7:0]", - "size": 8 + "range": "[15:0]", + "size": 16 } ] } @@ -8291,1069 +8909,1000 @@ "port": "o" }, "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", "port": "in" }, - "size": 8 + "size": 16 }, { "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", "port": "out" }, "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "port": "i0" }, - "size": 4 + "size": 8 }, { "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", "port": "out" }, "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "port": "i1" }, - "size": 4 + "size": 8 } ] } } }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -744 - } - }, - { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "name": "nc" }, "position": { - "x": 576, - "y": -736 + "x": 920, + "y": -24 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", "type": "basic.output", "data": { - "name": "c" + "name": "nc" }, "position": { "x": 920, - "y": -696 + "y": 56 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "", + "clock": true }, "position": { - "x": 8, - "y": -688 + "x": 368, + "y": 64 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "rst", + "clock": false }, "position": { - "x": 576, - "y": -672 + "x": 376, + "y": 200 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 8, - "y": -632 + "x": 920, + "y": 200 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": -312, - "y": -632 + "x": 376, + "y": 336 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 456, - "y": -584 + "x": 656, + "y": -80 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ { - "index": "0", - "name": "NULL", - "value": "NULL" + "name": "INI" } ], - "virtual": true, - "oldBlockColor": "fuchsia" + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 8, - "y": -576 + "x": 528, + "y": 32 + }, + "size": { + "width": 344, + "height": 400 + } + } + ], + "wires": [ + { + "source": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" + }, + "target": { + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "port": "in" + }, + "vertices": [], + "size": 16 + }, + { + "source": { + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" + }, + "vertices": [] + }, + { + "source": { + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "source": { + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" + }, + "size": 16 + }, + { + "source": { + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" + } + } + ] + } + } + }, + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { + "package": { + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": 456, - "y": -528 + "x": 384, + "y": -80 } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "clock": true }, "position": { - "x": -8, - "y": -448 + "x": -136, + "y": -16 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 328, - "y": -440 + "x": 384, + "y": 56 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", + "data": { + "name": "", + "clock": false }, "position": { - "x": -8, - "y": -384 + "x": -136, + "y": 128 } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", + "data": { + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 32, + "y": -56 + }, + "size": { + "width": 296, + "height": 288 + } + } + ], + "wires": [ + { + "source": { + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" + } + }, + { + "source": { + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" + } + }, + { + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" + }, + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "clock": true }, "position": { - "x": -312, - "y": -384 + "x": 216, + "y": -40 } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "b1" + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 328, - "y": -376 + "x": 368, + "y": -40 } }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "name": "data", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 1064, - "y": -368 + "x": 200, + "y": 128 } }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", "type": "basic.inputLabel", "data": { + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "size": 16 }, "position": { - "x": -16, - "y": -320 + "x": 344, + "y": 128 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": 184, - "y": -296 + "x": 560, + "y": 128 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, + "name": "LED", + "range": "[7:0]", + "size": 8 + }, + "position": { + "x": 1136, + "y": 144 + } + }, + { + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", "oldBlockColor": "fuchsia" }, "position": { - "x": -32, - "y": -264 + "x": 600, + "y": 240 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" + }, + "position": { + "x": 1208, + "y": 296 + } + }, + { + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b0", + "name": "ticsel", "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -232 + "x": 600, + "y": 312 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "ci", + "name": "sel", "clock": false }, "position": { - "x": -296, - "y": -168 + "x": 200, + "y": 320 } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" + }, "position": { - "x": 464, - "y": -392 + "x": 344, + "y": 320 + } + }, + { + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", + "data": { + "name": "b0" }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 1216, + "y": 376 } }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 608, - "y": -544 + "x": 1064, + "y": 376 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": -152, - "y": -664 + "x": 1344, + "y": 376 }, "size": { - "width": 96, - "height": 128 + "width": 184, + "height": 56 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 896, - "y": -400 + "x": 952, + "y": 128 }, "size": { "width": 96, - "height": 128 + "height": 96 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 744, - "y": -688 + "x": 720, + "y": 128 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", "position": { - "x": 320, - "y": -248 + "x": 744, + "y": 296 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" - } - }, - { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" }, - "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "vertices": [] }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" } }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "port": "outlabel" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" } }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" - } + "size": 16 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "block": "514effa0-6d57-4281-b479-22d05798dceb", + "port": "outlabel" }, "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" - } + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 + }, + "size": 16 }, { "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 8 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" } }, { "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } - }, + } + ] + } + } + }, + "d1a52ec25aee5e4823102a32325600666fe99e12": { + "package": { + "name": "8-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (8-bit channels)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", + "data": { + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 768, + "y": 192 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", + "data": { + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 552, + "y": 208 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "520455a3-592c-4fd0-ade9-62d366c88919", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "size": 4 + "position": { + "x": 200, + "y": 264 + } }, { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", + "data": { + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, - "size": 4 + "position": { + "x": 768, + "y": 264 + } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", + "data": { + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "position": { + "x": 544, + "y": 280 + } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": 808, + "y": 416 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": 1336, + "y": 432 } }, { - "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", + "data": { + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, - "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 584, + "y": 528 } - } - ] - } - } - }, - "c3c498191b14e9288a85fa2871b3966665f75475": { - "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "name": "a1", + "name": "A0", "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": -64, - "y": -648 + "x": 808, + "y": 552 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", "type": "basic.input", "data": { - "name": "", + "name": "0", "range": "[7:0]", "clock": false, "size": 8 }, "position": { - "x": -408, - "y": -584 + "x": 208, + "y": 592 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", "type": "basic.inputLabel", "data": { - "name": "a0", + "name": "B0", "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": -64, - "y": -568 + "x": 584, + "y": 608 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "type": "basic.outputLabel", "data": { - "name": "c" + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 832, - "y": -480 + "x": 808, + "y": 616 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 - }, - "position": { - "x": 248, - "y": -456 - } - }, - { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": -80, - "y": -448 + "x": 808, + "y": 680 } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "sel", + "clock": false }, "position": { - "x": -400, - "y": -392 + "x": 392, + "y": 768 } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": -80, - "y": -376 + "x": 552, + "y": 768 } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", - "type": "basic.outputLabel", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "info": "Channel B", + "readonly": true }, "position": { - "x": 248, - "y": -376 - } - }, - { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "type": "basic.output", - "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "x": 424, + "y": 512 }, - "position": { - "x": 840, - "y": -336 + "size": { + "width": 144, + "height": 32 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 - }, + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 120, - "y": -304 - } - }, - { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "x": 968, + "y": 568 }, - "position": { - "x": 120, - "y": -232 + "size": { + "width": 96, + "height": 96 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", + "type": "basic.info", "data": { - "name": "ci", - "clock": false + "info": "Channel A", + "readonly": true }, "position": { - "x": -392, - "y": -168 - } - }, - { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -248, - "y": -392 + "x": 424, + "y": 168 }, "size": { - "width": 96, - "height": 64 + "width": 144, + "height": 32 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": -240, - "y": -584 + "x": 1152, + "y": 432 }, "size": { "width": 96, @@ -9361,11 +9910,11 @@ } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 688, - "y": -336 + "x": 376, + "y": 264 }, "size": { "width": 96, @@ -9373,23 +9922,23 @@ } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 320, - "y": -248 + "x": 392, + "y": 592 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 464, - "y": -392 + "x": 960, + "y": 248 }, "size": { "width": 96, @@ -9400,1169 +9949,1163 @@ "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "port": "inlabel" - }, - "size": 4 + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "port": "outlabel" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, + "vertices": [ + { + "x": 928, + "y": 624 + } + ], "size": 4 }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "port": "inlabel" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, "size": 4 }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "port": "outlabel" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" }, "size": 4 }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], "size": 4 }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], "size": 4 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "port": "outlabel" }, "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "size": 8 + "size": 4 }, { "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 8 + "size": 4 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", "port": "in" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "520455a3-592c-4fd0-ade9-62d366c88919", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "size": 4 + "size": 8 }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "size": 4 + "size": 8 }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, "vertices": [ { - "x": 624, - "y": -392 + "x": 1088, + "y": 360 } - ] + ], + "size": 4 } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "Bus16-Join-half", + "name": "4-bits-Mux-2-1", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "2-to-1 Multplexer (4-bit channels)", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": 168 + "x": 712, + "y": -72 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 632, - "y": 200 + "x": 712, + "y": 0 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "type": "basic.input", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": 264 + "x": 712, + "y": 72 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": 712, + "y": 160 } - } - ], - "wires": [ + }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 16 + "position": { + "x": 432, + "y": 160 + } }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 8 + "position": { + "x": 440, + "y": 224 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, "position": { - "x": 88, - "y": 152 + "x": 712, + "y": 232 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", "type": "basic.input", "data": { - "name": "", - "clock": false + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 88, - "y": 280 + "x": 120, + "y": 240 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "type": "basic.output", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 616, - "y": 352 + "x": 432, + "y": 296 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 + "x": 712, + "y": 304 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", "data": { - "info": "Input signal", - "readonly": true + "blockColor": "fuchsia", + "name": "A0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": 416, + "y": 360 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "type": "basic.outputLabel", "data": { - "info": "System clock", - "readonly": true + "blockColor": "fuchsia", + "name": "A1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 712, + "y": 400 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { - "info": "Current signal \nstate", - "readonly": true + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 1256, + "y": 416 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "type": "basic.inputLabel", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "blockColor": "turquoise", + "name": "B3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 328, - "y": 200 - }, - "size": { - "width": 248, - "height": 48 + "x": 456, + "y": 464 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", - "type": "basic.info", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", + "type": "basic.outputLabel", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", - "readonly": true + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 504, - "y": 264 - }, - "size": { - "width": 400, - "height": 72 + "x": 712, + "y": 488 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 480, - "y": 352 + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 464, + "y": 528 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", - "type": "basic.info", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", "data": { - "info": "In any other case the output is 0", - "readonly": true + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 520, - "y": 432 - }, - "size": { - "width": 296, - "height": 40 + "x": 120, + "y": 544 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 320, - "y": 264 + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 712, + "y": 560 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "position": { + "x": 464, + "y": 592 } }, { - "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A0" }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "position": { + "x": 720, + "y": 648 } }, { - "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "position": { + "x": 432, + "y": 648 } }, { - "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B0", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 720, + "y": 720 } }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" - }, - "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [ - { - "x": 264, - "y": 368 - } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "sel", + "clock": false }, "position": { - "x": -256, - "y": -56 + "x": 104, + "y": 728 } }, { - "id": "e226f910-14af-473d-956b-03559f466726", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "navy", + "name": "sel", "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -104, - "y": -56 + "x": 264, + "y": 728 } }, { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 128, - "y": 32 + "x": 712, + "y": 800 } }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 472 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": -56, - "y": 72 + "x": 864, + "y": 704 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", + "type": "basic.info", "data": { - "name": "" + "info": "Channel A", + "readonly": true }, "position": { - "x": 424, + "x": 304, "y": 128 + }, + "size": { + "width": 144, + "height": 32 } }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", "data": { - "name": "", - "clock": false + "info": "Channel B", + "readonly": true }, "position": { - "x": -64, - "y": 160 + "x": 304, + "y": 480 + }, + "size": { + "width": 144, + "height": 32 } }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 104, - "y": 144 + "x": 856, + "y": 216 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 280, - "y": 128 + "x": 1040, + "y": 384 }, "size": { "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" - }, - "target": { - "block": "e226f910-14af-473d-956b-03559f466726", - "port": "inlabel" + "height": 128 } }, { - "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", - "port": "outlabel" + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": -16 }, - "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 96 } }, { - "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", - "port": "outlabel" + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 288, + "y": 512 }, - "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 128 } }, { - "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 280, + "y": 208 + }, + "size": { + "width": 96, + "height": 128 + } + } + ], + "wires": [ + { + "source": { + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "port": "inlabel" } }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } - } - ] - } - } - }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { - "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 824, - "y": 304 + "target": { + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", + "port": "inlabel" } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 376, - "y": 320 + "target": { + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "port": "inlabel" } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", - "data": { - "name": "not", - "value": "0", - "local": false + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 520, - "y": 160 + "target": { + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "port": "inlabel" } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", - "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true - }, - "position": { - "x": 632, - "y": 392 + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "size": { - "width": 336, - "height": 96 + "target": { + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "port": "inlabel" } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", - "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true + "source": { + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 8 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "port": "outlabel" }, - "size": { - "width": 296, - "height": 144 + "target": { + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "source": { + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } }, { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", - "position": { - "x": 520, - "y": 256 + "source": { + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } - } - ], - "wires": [ + }, { "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, "vertices": [] }, { "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [] }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 960, - "y": 248 + "target": { + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 128 - } + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + }, + "vertices": [] }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "source": { + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "port": "outlabel" }, - "position": { - "x": 672, - "y": 248 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": { - "width": 208, - "height": 64 + "vertices": [] + }, + { + "source": { + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "port": "outlabel" + }, + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] + }, + { + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + }, + "target": { + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "port": "inlabel" } - } - ], - "wires": [ + }, { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", + "port": "inlabel" } }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + }, + "vertices": [ + { + "x": 984, + "y": 472 + } + ] + }, + { + "source": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + }, + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + } + }, + { + "source": { + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + }, + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 976, + "y": 352 + } + ] + }, + { + "source": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" + }, + "target": { + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", "port": "in" + }, + "size": 4 + }, + { + "source": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + }, + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } + }, + { + "source": { + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" + }, + "target": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "port": "out" + }, + "target": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 } ] } } }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "name": "Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (1-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 216, - "y": -40 + "x": 456, + "y": 360 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "" }, "position": { - "x": 368, - "y": -40 + "x": 1096, + "y": 392 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "1", + "clock": false }, "position": { - "x": 200, - "y": 128 + "x": 136, + "y": 416 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 344, - "y": 128 + "x": 272, + "y": 416 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", - "type": "basic.outputLabel", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "b", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": 272, + "y": 528 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "type": "basic.input", "data": { - "name": "LED", - "range": "[7:0]", - "size": 8 + "name": "0", + "clock": false }, "position": { - "x": 1136, - "y": 144 + "x": 136, + "y": 528 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "8d94a294-a698-43c5-9777-874fd39b8586", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "fuchsia", + "name": "b", "oldBlockColor": "fuchsia" }, "position": { - "x": 600, - "y": 240 + "x": 616, + "y": 552 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "name": "byte" + "name": "sel", + "clock": false }, "position": { - "x": 1208, - "y": 296 + "x": 376, + "y": 656 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 600, - "y": 312 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 200, - "y": 320 - } - }, - { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 344, - "y": 320 - } - }, - { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", - "data": { - "name": "b0" - }, - "position": { - "x": 1216, - "y": 376 - } - }, - { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 1064, - "y": 376 + "x": 952, + "y": 392 }, "size": { "width": 96, @@ -10570,51 +11113,35 @@ } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", - "type": "basic.info", - "data": { - "info": "Byte 0 \n(least significant) ", - "readonly": true - }, + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 1344, + "x": 600, "y": 376 }, - "size": { - "width": 184, - "height": 56 - } - }, - { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", - "position": { - "x": 744, - "y": 296 - }, "size": { "width": 96, "height": 64 } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 952, - "y": 128 + "x": 624, + "y": 656 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 720, - "y": 128 + "x": 784, + "y": 568 }, "size": { "width": 96, @@ -10625,24 +11152,25 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "8d94a294-a698-43c5-9777-874fd39b8586", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] }, { "source": { @@ -10650,3269 +11178,322 @@ "port": "out" }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "port": "inlabel" } }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "port": "outlabel" - }, - "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" - } - }, - { - "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "port": "out" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "port": "inlabel" - }, - "size": 16 - }, - { - "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", - "port": "outlabel" - }, - "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 - }, - "size": 16 - }, - { - "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" - }, - "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" - }, - "size": 8 + } }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", "port": "in" - } - }, - { - "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" - }, - "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" - } + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - } - ] - } - } - }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { - "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" }, - "position": { - "x": 232, - "y": -112 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 - } - }, - { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 880, - "y": 16 - } - }, - { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 32 - } - }, - { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", - "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" - } - }, - { - "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" - }, - "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "port": "inlabel" - } - }, - { - "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" - } - }, - { - "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" - } - }, - { - "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } - } - ] - } - } - }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { - "package": { - "name": "1-bit-reg", - "version": "0.1", - "description": "Reg: 1-Bit register", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": 440 - } - }, - { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 224, - "y": 440 - } - }, - { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", - "clock": false - }, - "position": { - "x": 80, - "y": 552 - } - }, - { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 1152, - "y": 592 - } - }, - { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" - }, - "position": { - "x": 232, - "y": 632 - } - }, - { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "type": "basic.input", - "data": { - "name": "load", - "clock": false - }, - "position": { - "x": 80, - "y": 632 - } - }, - { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "type": "basic.outputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 688 - } - }, - { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 784, - "y": 504 - } - }, - { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, - "position": { - "x": 640, - "y": 712 - }, - "size": { - "width": 104, - "height": 40 - } - }, - { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, - "position": { - "x": 776, - "y": 680 - }, - "size": { - "width": 120, - "height": 48 - } - }, - { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", - "position": { - "x": 616, - "y": 600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 784, - "y": 600 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" - }, - "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", - "port": "inlabel" - } - }, - { - "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "port": "out" - }, - "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", - "port": "inlabel" - } - }, - { - "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] - }, - { - "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - }, - "vertices": [] - }, - { - "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { - "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 144, - "y": 504 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - } - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 456, - "y": 360 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1096, - "y": 392 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 136, - "y": 416 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": 416 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": 528 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 136, - "y": 528 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 616, - "y": 552 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 376, - "y": 656 - } - }, - { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 952, - "y": 392 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 600, - "y": 376 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 624, - "y": 656 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 784, - "y": 568 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - }, - "vertices": [] - }, - { - "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - } - ] - } - } - }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { - "package": { - "name": "8-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "type": "basic.outputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 768, - "y": 192 - } - }, - { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "type": "basic.inputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 552, - "y": 208 - } - }, - { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", - "type": "basic.input", - "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 200, - "y": 264 - } - }, - { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "type": "basic.outputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 768, - "y": 264 - } - }, - { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "type": "basic.inputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 544, - "y": 280 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 416 - } - }, - { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 1336, - "y": 432 - } - }, - { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "blockColor": "lightseagreen", - "size": 4 - }, - "position": { - "x": 584, - "y": 528 - } - }, - { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "type": "basic.outputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 808, - "y": 552 - } - }, - { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", - "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 208, - "y": 592 - } - }, - { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "type": "basic.inputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 584, - "y": 608 - } - }, - { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "type": "basic.outputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 808, - "y": 616 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 680 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 392, - "y": 768 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 552, - "y": 768 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 424, - "y": 512 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 968, - "y": 568 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 424, - "y": 168 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 1152, - "y": 432 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 376, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 392, - "y": 592 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 960, - "y": 248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 - }, - { - "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" - }, - "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" - }, - "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "vertices": [ - { - "x": 1088, - "y": 360 - } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } - }, - { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 0 - } - }, - { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 72 - } - }, - { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 160 - } - }, - { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 - } - }, - { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 440, - "y": 224 - } - }, - { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 232 - } - }, - { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 240 - } - }, - { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 432, - "y": 296 - } - }, - { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 304 - } - }, - { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 360 - } - }, - { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 400 - } - }, - { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1256, - "y": 416 - } - }, - { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 456, - "y": 464 - } - }, - { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 488 - } - }, - { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 464, - "y": 528 - } - }, - { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 560 - } - }, - { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 592 - } - }, - { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0" - }, - "position": { - "x": 720, - "y": 648 - } - }, - { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 720, - "y": 720 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 104, - "y": 728 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 264, - "y": 728 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 800 - } - }, - { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 216 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 1040, - "y": 384 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": -16 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 288, - "y": 512 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 280, - "y": 208 - }, - "size": { - "width": 96, - "height": 128 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } - }, - { - "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" - } - }, - { - "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] - }, - { - "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] - }, - { - "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" - }, - "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" - }, - "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - } - ] - } - } - }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { - "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 496, - "y": 80 - } - }, - { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "type": "basic.input", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": -16, - "y": 80 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", - "data": { - "info": "Input", - "readonly": true - }, - "position": { - "x": 24, - "y": 56 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 512, - "y": 48 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" - }, - "position": { - "x": 176, - "y": 64 - }, - "size": { - "width": 232, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" - }, - "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" - }, - "size": 16 + "vertices": [] }, { "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "port": "out" - }, - "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" - }, - "size": 16 - } - ] - } - } - }, - "aceaf4f9f5d3279978cebbca36e76014b64d73ac": { - "package": { - "name": "UINT16-13bit-verilog", - "version": "0.1", - "description": "UINT32-13bit-verilog: Extend a 13-bit unsigned integer to 32-bits. Verilog implementation ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 920, - "y": 304 - } - }, - { - "id": "e95b5383-3325-4fdb-bf63-98691178661c", - "type": "basic.input", - "data": { - "name": "i", - "virtual": true, - "range": "[12:0]", - "pins": [ - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ], + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + } + ] + } + } + }, + "b7f7136a87c607769a64233fd99bc12818a05746": { + "package": { + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 328, + "y": -80 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 + } + }, + { + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "type": "basic.input", + "data": { + "name": "", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 320, + "y": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i", - "range": "[12:0]", - "size": 13 + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[15:0]", - "size": 16 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 13;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 512, - "y": 272 + "x": 496, + "y": -120 }, "size": { - "width": 344, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, - "size": 16 + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" + } }, { "source": { - "block": "e95b5383-3325-4fdb-bf63-98691178661c", + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 13 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } } }, - "1ff618ba669e7fdbcb1bada5c000eab17c45c0f9": { + "db99a67dfc5891eea24c3214c0a232094f338a60": { "package": { - "name": "Copy-13-verilog", - "version": "0.2", - "description": "Copy-13: Copy the input wire twice and generate a 13 bits Bus output (Verilog implementation)", + "name": "13-Uint16", + "version": "0.4", + "description": "13-Uint16: 13 bits unsigned integer extension to 16 bits. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "type": "basic.input", + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { "name": "", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 448, - "y": 176 + "x": 952, + "y": 368 } }, { - "id": "d24701db-e0d1-4a99-b4e0-0f4a33d8d396", - "type": "basic.output", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { "name": "", - "virtual": true, "range": "[12:0]", - "pins": [ - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "size": 13 }, "position": { - "x": 992, - "y": 176 + "x": 336, + "y": 368 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i" + "name": "i", + "range": "[12:0]", + "size": 13 } ], "out": [ { "name": "o", - "range": "[12:0]", - "size": 13 + "range": "[15:0]", + "size": 16 } ] }, "params": [], - "code": "//-- Number of bits\nlocalparam N=13;\n\nassign o = {N{i}};\n" + "code": "//-- Number of input bits\nlocalparam X = 13;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 632, - "y": 144 + "x": 504, + "y": 272 }, "size": { - "width": 288, - "height": 120 + "width": 384, + "height": 248 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "port": "out" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" - } + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" }, "target": { - "block": "d24701db-e0d1-4a99-b4e0-0f4a33d8d396", - "port": "in" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" }, "size": 13 } diff --git a/examples/TESTs/Uint/Uint16/14-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/14-bits/Alhambra-II/01-Manual-testing.ice index b7de742d..8dccc5fd 100644 --- a/examples/TESTs/Uint/Uint16/14-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/14-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint16-14bit Manual testing", + "info": "## 14-Uint16 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,23 +154,23 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "e58ba414-6b70-49a0-9fd5-b425f3cdc62c", + "type": "a0afbf4f703cf70f91f16b882db0109a792eafca", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "a0342d92-7514-4512-8a4a-2d064b6b0ffb", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 728, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -178,22 +178,22 @@ } }, { - "id": "04e28426-bb7b-4b4f-944b-71682a235539", - "type": "9ba712890c6036b778ef1fa4ad82286a940c17d8", + "id": "c48edcaf-da74-49f9-8f52-b34d5eaacea2", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 544, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "e58ba414-6b70-49a0-9fd5-b425f3cdc62c", - "type": "a0afbf4f703cf70f91f16b882db0109a792eafca", + "id": "9771af82-9b20-4687-9350-d8051a550f3c", + "type": "ac8531b7172fd396090e91087890576e0c3a13c4", "position": { - "x": 344, + "x": 544, "y": 56 }, "size": { @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "c48edcaf-da74-49f9-8f52-b34d5eaacea2", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "c48edcaf-da74-49f9-8f52-b34d5eaacea2", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "a0342d92-7514-4512-8a4a-2d064b6b0ffb", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "a0342d92-7514-4512-8a4a-2d064b6b0ffb", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "c48edcaf-da74-49f9-8f52-b34d5eaacea2", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "c48edcaf-da74-49f9-8f52-b34d5eaacea2", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "04e28426-bb7b-4b4f-944b-71682a235539", - "port": "be5c72ef-8c14-447a-922c-e38e9ef6baee" + "block": "9771af82-9b20-4687-9350-d8051a550f3c", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "0f8094f9-d01d-4c81-91ff-9940f4bf4b8b" }, "target": { - "block": "04e28426-bb7b-4b4f-944b-71682a235539", - "port": "80555f8a-c7c0-447f-aca6-b73bb9bdcb33" + "block": "9771af82-9b20-4687-9350-d8051a550f3c", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 14 } @@ -291,169 +291,628 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 744, - "y": 136 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", - "data": { - "name": "Press" + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 1024, - "y": 168 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" }, - "position": { - "x": 304, - "y": 200 - } - }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "a0afbf4f703cf70f91f16b882db0109a792eafca": { + "package": { + "name": "Copy-14-verilog", + "version": "0.2", + "description": "Copy-14: Copy the input wire twice and generate a 14 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "0f8094f9-d01d-4c81-91ff-9940f4bf4b8b", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "virtual": true, + "range": "[13:0]", + "pins": [ + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[13:0]", + "size": 14 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=14;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", - "data": { - "info": "Tic: button pressed", - "readonly": true + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" }, - "position": { - "x": 1024, - "y": 152 + "target": { + "block": "0f8094f9-d01d-4c81-91ff-9940f4bf4b8b", + "port": "in" + }, + "size": 14 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 + } + }, + { + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 744, + "y": 136 + } + }, + { + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" + }, + "position": { + "x": 1032, + "y": 184 + } + }, + { + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 304, + "y": 200 + } + }, + { + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false + }, + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false + }, + "position": { + "x": 560, + "y": 56 + } + }, + { + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true + }, + "position": { + "x": 720, + "y": -32 + }, + "size": { + "width": 176, + "height": 40 + } + }, + { + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true + }, + "position": { + "x": 1024, + "y": 152 }, "size": { "width": 184, @@ -509,8 +968,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +980,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +1010,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +1026,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +1036,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +1052,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1077,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1087,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1095,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1118,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -795,11 +1265,11 @@ } }, { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "70cfa680-3def-482c-b194-054c1f522357", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 320, - "y": 264 + "x": 552, + "y": 280 }, "size": { "width": 96, @@ -807,11 +1277,11 @@ } }, { - "id": "70cfa680-3def-482c-b194-054c1f522357", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 552, - "y": 264 + "x": 696, + "y": 400 }, "size": { "width": 96, @@ -819,11 +1289,11 @@ } }, { - "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 696, - "y": 400 + "x": 320, + "y": 264 }, "size": { "width": 96, @@ -838,7 +1308,7 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1318,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,290 +1366,70 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { + "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { - "name": "DFF", + "name": "NOT", "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" + "description": "NOT gate (Verilog implementation)", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": 208, - "y": 160 + "x": 112, + "y": 72 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 816, - "y": 224 + "x": 560, + "y": 72 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", + "type": "basic.code", "data": { - "name": "", - "clock": false + "code": "//-- NOT Gate\nassign q = ~a;\n\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 208, - "y": 304 + "x": 256, + "y": 48 + }, + "size": { + "width": 256, + "height": 104 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, - "3676a00f3a70e406487ed14b901daf3e4984e63d": { - "package": { - "name": "NOT", - "version": "2.0", - "description": "NOT gate (Verilog implementation)", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" - }, - "position": { - "x": 112, - "y": 72 - } - }, - { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 560, - "y": 72 - } - }, - { - "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", - "type": "basic.code", - "data": { - "code": "//-- NOT Gate\nassign q = ~a;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 256, - "height": 104 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { "info": "Input", "readonly": true @@ -1346,44 +1596,283 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "name": "" + }, + "position": { + "x": 816, + "y": 232 + } + }, + { + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, "position": { "x": 280, @@ -1412,8 +1901,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1913,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1950,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +2006,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +2022,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +2031,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +2043,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +2055,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2085,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2095,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2105,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2127,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2155,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,682 +2340,493 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -376, - "y": -656 - } - }, - { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -224, - "y": -656 - } - }, - { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 952, - "y": -600 - } - }, - { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, - "position": { - "x": 816, - "y": -600 + "x": 824, + "y": 304 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", "clock": false }, "position": { - "x": -376, - "y": -584 + "x": 376, + "y": 320 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "not", + "value": "0", + "local": false }, "position": { - "x": -224, - "y": -584 + "x": 520, + "y": 160 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 552, - "y": -440 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": 840, - "y": -352 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": 536, - "y": -352 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": -288 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 120, - "y": -232 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 120, - "y": -160 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", - "position": { - "x": 704, - "y": -368 + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "info": "Edge detector", - "readonly": true + "name": "" }, "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 + "x": 960, + "y": 248 } }, { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": 376, - "y": -120 - }, - "size": { - "width": 288, - "height": 56 + "x": 728, + "y": 128 } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } }, "position": { - "x": 720, - "y": -456 + "x": 672, + "y": 248 }, "size": { - "width": 304, - "height": 72 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", - "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true - }, - "position": { - "x": 432, - "y": -640 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 360, - "height": 120 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", - "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true - }, - "position": { - "x": -8, - "y": -648 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 312, - "height": 128 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 48 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "Counter", - "readonly": true + "name": "" }, "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 + "x": 560, + "y": 72 } }, { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", + "data": { + "name": "" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 120, + "y": 104 } }, { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", + "data": { + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } + }, "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" - } - }, - { - "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" - } - }, - { - "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "block": "97b51945-d716-4b6c-9db9-970d08541249", "port": "out" }, "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" - } - }, - { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" - }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" - } - }, - { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "block": "664caf9e-5f40-4df4-800a-b626af702e62", "port": "in" } - }, - { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } - }, - { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" - }, - "vertices": [] - }, - { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" - }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" - } } ] } } }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": 104 - } + "x": -376, + "y": -656 + } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 216, - "y": 192 + "x": -224, + "y": -656 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 728, - "y": 192 + "x": 952, + "y": -600 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "out" }, "position": { - "x": 240, - "y": 320 + "x": 816, + "y": -600 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "clock": false }, "position": { - "x": 472, - "y": 56 + "x": -376, + "y": -584 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "blockColor": "fuchsia", + "name": "in" }, "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 272, - "height": 104 + "x": -224, + "y": -584 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", - "type": "basic.info", + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", "data": { - "info": "Initial value", - "readonly": true + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 480, - "y": 48 - }, - "size": { - "width": 136, - "height": 32 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "x": 552, + "y": -440 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 840, + "y": -352 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" - } - } - ] - } - } - }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { - "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": -120 + "x": 536, + "y": -352 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { "blockColor": "yellow", "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "oldBlockColor": "fuchsia" }, "position": { - "x": 368, - "y": -120 + "x": 384, + "y": -288 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2534,194 +2834,153 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 384, - "y": -32 + "x": 112, + "y": -248 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "type": "basic.outputLabel", "data": { - "name": "q", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1040, - "y": -32 + "x": 112, + "y": -176 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Edge detector", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "name": "max" + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 368, + "y": -88 + }, + "size": { + "width": 288, + "height": 56 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", + "readonly": true }, "position": { - "x": 1048, - "y": 56 - } - }, - { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "x": 720, + "y": -456 + }, + "size": { + "width": 304, + "height": 72 + } + }, + { + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "Stable output", + "readonly": true }, "position": { - "x": 856, - "y": 144 + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true + }, "position": { - "x": 544, - "y": 40 + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 + } + }, + { + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", + "position": { + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 }, "size": { "width": 96, @@ -2729,11 +2988,11 @@ } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", "position": { - "x": 720, - "y": 160 + "x": 520, + "y": -192 }, "size": { "width": 96, @@ -2744,695 +3003,552 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", "port": "inlabel" - }, - "vertices": [] + } }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" }, "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" - }, - "vertices": [] + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", "port": "outlabel" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", "port": "outlabel" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "port": "in" + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" }, "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", "port": "inlabel" - }, - "size": 16 + } }, { "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", "port": "outlabel" }, "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + } }, { "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", + "port": "inlabel" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "port": "outlabel" }, "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } + }, + { + "source": { + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" }, - "vertices": [], - "size": 16 + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" }, - "vertices": [ - { - "x": 840, - "y": 264 - } - ], - "size": 16 + "vertices": [] + }, + { + "source": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + }, + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + } } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -136, - "y": -448 - } - }, - { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": -136, - "y": -376 + "x": 624, + "y": 120 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": -632, - "y": -264 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true - }, - "position": { - "x": -480, - "y": -264 - } - }, - { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -216 + "x": 88, + "y": 152 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", "data": { - "name": "rst", + "name": "", "clock": false }, "position": { - "x": -624, - "y": -192 + "x": 88, + "y": 280 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "" }, "position": { - "x": -480, - "y": -192 + "x": 616, + "y": 352 } }, { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": -112, - "y": -144 - } - }, - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": -40 }, - "position": { - "x": -112, - "y": -8 + "size": { + "width": 648, + "height": 96 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Input signal", + "readonly": true }, "position": { - "x": -128, - "y": 72 - } - }, - { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "x": 96, + "y": 256 }, - "position": { - "x": 568, - "y": 104 + "size": { + "width": 136, + "height": 40 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "info": "System clock", + "readonly": true }, "position": { - "x": -576, - "y": 136 - } - }, - { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "x": 104, + "y": 120 }, - "position": { - "x": -128, - "y": 248 + "size": { + "width": 96, + "height": 48 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, + "x": 160, "y": 352 }, "size": { - "width": 96, - "height": 96 + "width": 168, + "height": 48 } }, { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", + "data": { + "info": "Signal state in the previous \nclock cycle", + "readonly": true + }, "position": { - "x": 40, - "y": 104 + "x": 328, + "y": 200 }, "size": { - "width": 96, - "height": 96 + "width": 248, + "height": 48 } }, { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", + "data": { + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true + }, "position": { - "x": -400, - "y": 104 + "x": 504, + "y": 264 }, "size": { - "width": 96, - "height": 128 + "width": 400, + "height": 72 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 384, - "y": 72 + "x": 480, + "y": 352 }, "size": { "width": 96, - "height": 128 + "height": 64 } }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 48, - "y": -152 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 64, - "y": -360 + "x": 320, + "y": 264 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "block": "2708468d-1088-4570-be63-fb0d4799a941", "port": "out" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "port": "in" } }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": -8, - "y": 376 + "x": 264, + "y": 368 } ] - }, + } + ] + } + } + }, + "8a23ffd0491010ff595493182b82c722bd6902d7": { + "package": { + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 424 } }, { - "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "port": "outlabel" + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", + "data": { + "name": "d", + "clock": false }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 536 } }, { - "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "position": { + "x": 824, + "y": 536 } }, { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "type": "basic.input", + "data": { + "name": "load", + "clock": false }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": 128, + "y": 648 } }, { - "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", - "port": "outlabel" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] - }, - { - "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "port": "out" - }, - "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" - }, - "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" - }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -272, - "y": 368 - } - ], - "size": 4 - }, - { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 488, + "y": 280 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "position": { + "x": 320, + "y": 400 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 - }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" - }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" + } }, { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" - }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" - }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { "package": { - "name": "DFF-rst-x04", - "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 }, "design": { "graph": { "blocks": [ - { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -160, - "y": -336 - } - }, - { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -168, - "y": -280 - } - }, { "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", @@ -3441,8 +3557,8 @@ "clock": true }, "position": { - "x": -496, - "y": -256 + "x": 216, + "y": -120 } }, { @@ -3461,12 +3577,12 @@ "virtual": true }, "position": { - "x": -344, - "y": -256 + "x": 368, + "y": -120 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -3474,200 +3590,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 112, - "y": -200 + "x": 384, + "y": -32 } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", - "data": { - "name": "rst", - "clock": false - }, - "position": { - "x": -488, - "y": -184 - } - }, - { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 112, - "y": -112 - } - }, - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": 376, - "y": -8 + "x": 1040, + "y": -32 } }, { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 376, - "y": 80 + "x": 1216, + "y": -32 } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "max" }, "position": { - "x": 1032, - "y": 184 + "x": 1208, + "y": 56 } }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": 528, - "y": 208 + "x": 1048, + "y": 56 } }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" + "clock": false }, "position": { - "x": 520, - "y": 264 + "x": 216, + "y": 56 } }, { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 712, + "y": 88 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 856, + "y": 144 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 272, - "y": -128 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": -16, - "y": -296 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3689,762 +3811,865 @@ }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } - }, - { - "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "port": "outlabel" - }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } - }, - { - "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" - }, - "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", "port": "inlabel" - } - }, - { - "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "vertices": [] }, { "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", "port": "outlabel" }, "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" + }, + "size": 16 }, { "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 + }, + "size": 16 }, { "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "port": "out" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" } }, { "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" + }, + "vertices": [], + "size": 16 }, { "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": 712, - "y": 128 + "x": 840, + "y": 264 } - ] - }, + ], + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 624, + "y": -168 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 280, + "y": -152 + } + }, + { + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": 624, + "y": -104 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 456, + "y": -256 } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", + "block": "12fb4602-d67f-4129-a777-f04945adf29d", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "size": 4 + "size": 16 }, { "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "size": 16 } ] } } }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "Bus4-Split-all", + "name": "AdderK-16bits", "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its wires", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "3" + "name": "c" }, "position": { - "x": 576, - "y": 80 + "x": 624, + "y": -168 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", "type": "basic.output", "data": { - "name": "2" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 600, - "y": 144 + "x": 624, + "y": -96 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": 128, - "y": 184 + "x": 232, + "y": -56 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "name": "1" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 592, - "y": 240 + "x": 232, + "y": -272 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 568, - "y": 296 + "x": 232, + "y": -168 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": 296, - "y": 176 + "x": 456, + "y": -152 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "84f0a15761ee8b753f67079819a7614923939472": { + "651fa32fcf52b534a766fdb2ba638a010338f268": { "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false - }, - "position": { - "x": 80, - "y": 64 - } - }, - { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false - }, - "position": { - "x": 80, - "y": 136 - } - }, - { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", "type": "basic.output", "data": { "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 712, - "y": 200 - } - }, - { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "type": "basic.input", - "data": { - "name": "1", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 80, - "y": 208 + "x": 960, + "y": 248 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "name": "0", - "clock": false + "name": "", + "value": "0", + "local": false }, "position": { - "x": 80, - "y": 272 + "x": 728, + "y": 128 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], "ports": { - "in": [ - { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" - } - ], + "in": [], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "k", + "range": "[15:0]", + "size": 16 } ] } }, "position": { - "x": 296, - "y": 176 + "x": 672, + "y": 248 }, "size": { - "width": 344, - "height": 104 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", "port": "in" }, - "size": 4 + "size": 16 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 - }, + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[7:0]", "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 8, + "y": -664 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "" + "name": "c" }, "position": { - "x": 856, - "y": -56 + "x": 960, + "y": -608 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 200, - "y": -56 + "x": -320, + "y": -608 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", "data": { - "name": "d", - "clock": false + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": 80 + "x": 8, + "y": -592 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 8, + "y": -472 } }, { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 536, - "y": -40 + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 184, + "y": -472 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", "data": { - "info": "Data input", - "readonly": true - }, - "position": { - "x": 216, - "y": 56 + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "size": { - "width": 104, - "height": 40 + "position": { + "x": -320, + "y": -424 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", "data": { - "info": "System clock", - "readonly": true + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 208, - "y": -304 + "x": 8, + "y": -408 + } + }, + { + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 + }, + "position": { + "x": 184, + "y": -408 + } + }, + { + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -424 }, "size": { - "width": 144, - "height": 40 + "width": 96, + "height": 64 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", - "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "position": { + "x": -168, + "y": -608 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", "position": { - "x": 720, - "y": -200 + "x": 352, + "y": -456 }, "size": { - "width": 152, + "width": 96, "height": 64 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", "position": { - "x": 712, - "y": -56 + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, @@ -4455,173 +4680,235 @@ "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", - "port": "outlabel" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" }, - "vertices": [] + "size": 8 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "port": "out" + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { - "package": { - "name": "Bus16-Split-quarter", - "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", - "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": { - "graph": { - "blocks": [ + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 + }, + "size": 8 + }, { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 608, - "y": 64 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", - "type": "basic.output", - "data": { - "name": "2", - "range": "[3:0]", - "size": 4 + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 640, - "y": 208 + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" }, - "position": { - "x": 96, - "y": 224 - } + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 }, { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "type": "basic.output", "data": { "name": "1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, "position": { "x": 608, - "y": 312 + "y": 176 + } + }, + { + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 + }, + "position": { + "x": 96, + "y": 208 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "type": "basic.output", "data": { "name": "0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, "position": { - "x": 552, - "y": 400 + "x": 608, + "y": 272 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ @@ -4632,25 +4919,15 @@ } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "o0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ] } @@ -4661,7 +4938,7 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], @@ -4677,622 +4954,669 @@ }, "size": 16 }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" - }, - "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "port": "in" }, - "size": 4 + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "port": "o0" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-8bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-8bits: Adder of two operands of 8 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "3", + "name": "a1", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 16, + "y": -688 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "type": "basic.outputLabel", "data": { - "name": "2", + "name": "a1", "range": "[3:0]", - "clock": false, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 104, - "y": 184 + "x": 352, + "y": -664 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 720, - "y": 224 + "x": -312, + "y": -632 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 16, + "y": -616 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "c" }, "position": { - "x": 104, - "y": 312 + "x": 960, + "y": -608 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 + "x": 352, + "y": -584 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", + "data": { + "name": "s", + "range": "[7:0]", + "size": 8 }, - "size": 4 + "position": { + "x": 960, + "y": -544 + } }, { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, - "size": 4 + "position": { + "x": 184, + "y": -472 + } }, { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 + "position": { + "x": 8, + "y": -440 + } }, { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "type": "basic.outputLabel", "data": { - "name": "c" + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 624, - "y": -168 + "x": 184, + "y": -408 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "id": "63477487-9493-4058-a7e1-9bab443ec466", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", + "range": "[7:0]", "clock": false, - "size": 16 + "size": 8 }, "position": { - "x": 280, - "y": -152 + "x": -320, + "y": -384 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 624, - "y": -104 + "x": 8, + "y": -368 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", - "data": { - "name": "", - "value": "1", - "local": true - }, + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, - "y": -256 + "x": -168, + "y": -384 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", - "position": { - "x": 456, - "y": -152 + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -152, + "y": -632 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, "height": 64 } + }, + { + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } } ], "wires": [ { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" - } + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "port": "inlabel" }, - "size": 16 + "size": 4 }, { "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" }, - "position": { - "x": 624, - "y": -168 - } + "size": 4 }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "source": { + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "port": "outlabel" }, - "position": { - "x": 624, - "y": -96 - } - }, - { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 232, - "y": -56 - } + "size": 4 }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, - "position": { - "x": 232, - "y": -272 - } + "target": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 + "source": { + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", - "position": { - "x": 456, - "y": -152 + "source": { + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "63477487-9493-4058-a7e1-9bab443ec466", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "port": "out" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, - "size": 16 + "size": 4 }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 16 + "size": 4 }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", "port": "in" }, - "size": 16 - } + "size": 8 + }, + { + "source": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + } ] } } }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "Bus8-Split-half", + "version": "0.1", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", + "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": { "graph": { "blocks": [ { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "1", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 960, - "y": 248 + "x": 584, + "y": 104 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "type": "basic.input", "data": { "name": "", - "value": "0", - "local": false + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 728, - "y": 128 + "x": 120, + "y": 208 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "type": "basic.output", + "data": { + "name": "0", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 584, + "y": 232 + } + }, + { + "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "params": [], "ports": { - "in": [], + "in": [ + { + "name": "i", + "range": "[7:0]", + "size": 8 + } + ], "out": [ { - "name": "k", - "range": "[15:0]", - "size": 16 + "name": "o1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "o0", + "range": "[3:0]", + "size": 4 } ] } }, "position": { - "x": 672, - "y": 248 + "x": 272, + "y": 176 }, "size": { - "width": 208, - "height": 64 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" - } + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", + "port": "in" + }, + "size": 4 }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" }, - "size": 16 + "size": 4 + }, + { + "source": { + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 8 } ] } } }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "Adder-16bits", + "name": "Adder-4bits", "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", + "description": "Adder-4bits: Adder of two operands of 4 bits", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -5301,74 +5625,37 @@ "graph": { "blocks": [ { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a3", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -664 + "y": -744 } }, { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[7:0]", "blockColor": "deeppink", - "size": 8 + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 352, - "y": -664 + "x": 576, + "y": -736 } }, { @@ -5378,280 +5665,293 @@ "name": "c" }, "position": { - "x": 960, - "y": -608 + "x": 920, + "y": -696 } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": -320, - "y": -608 + "x": 8, + "y": -688 } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", "type": "basic.inputLabel", "data": { - "name": "a0", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a1", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "oldBlockColor": "deeppink" }, "position": { "x": 8, - "y": -592 + "y": -632 } }, { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 352, - "y": -584 + "x": -312, + "y": -632 } }, { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 960, - "y": -544 + "x": 456, + "y": -584 } }, { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[7:0]", + "blockColor": "deeppink", + "name": "a0", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { "x": 8, - "y": -472 + "y": -576 } }, { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "id": "3c8597e6-ca79-494a-9a53-04c284205216", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -472 + "x": 456, + "y": -528 } }, { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "type": "basic.input", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -320, - "y": -424 + "x": -8, + "y": -448 } }, { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 328, + "y": -440 + } + }, + { + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[7:0]", + "blockColor": "fuchsia", + "name": "b2", "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -408 + "x": -8, + "y": -384 } }, { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 184, - "y": -408 + "x": -312, + "y": -384 } }, { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 328, + "y": -376 } }, { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -608 + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 + }, + "position": { + "x": 1064, + "y": -368 + } + }, + { + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": -16, + "y": -320 + } + }, + { + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -296 + } + }, + { + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" + }, + "position": { + "x": -32, + "y": -264 + } + }, + { + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 + } + }, + { + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 }, "size": { "width": 96, @@ -5659,23 +5959,23 @@ } }, { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 352, - "y": -456 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 520, - "y": -600 + "x": 608, + "y": -544 }, "size": { "width": 96, @@ -5683,326 +5983,355 @@ } }, { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 760, - "y": -544 + "x": -168, + "y": -416 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" - }, - "size": 8 + } }, { "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" + } }, { "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 - }, - "size": 8 + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "size": 16 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "size": 16 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" + } }, { "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "port": "in" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "size": 16 + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": 8 - } - ] - } - } - }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { - "package": { - "name": "Bus16-Split-half", - "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", - "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": { - "graph": { - "blocks": [ + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } + }, { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", - "data": { - "name": "1", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 608, - "y": 176 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 96, - "y": 208 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "type": "basic.output", - "data": { - "name": "0", - "range": "[7:0]", - "size": 8 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 608, - "y": 272 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 } + ] + }, + { + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 272, - "y": 176 + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": { - "width": 240, - "height": 120 - } - } - ], - "wires": [ + "size": 4 + }, { "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", "port": "out" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "size": 16 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "port": "in" }, - "size": 8 + "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "port": "in" + } + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": 8 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } } ] } } }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { "package": { - "name": "Adder-8bits", + "name": "Adder-1bit", "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", + "description": "Adder-1bit: Adder of two operands of 1 bit", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", "otid": 1618560481898 @@ -6011,267 +6340,348 @@ "graph": { "blocks": [ { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", - "type": "basic.inputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "", + "clock": false }, "position": { - "x": 16, - "y": -688 + "x": 280, + "y": -224 } }, { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "c" }, "position": { - "x": 352, - "y": -664 + "x": 616, + "y": -176 } }, { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 280, + "y": -152 } }, { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "type": "basic.inputLabel", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "name": "s" }, "position": { - "x": 16, - "y": -616 + "x": 616, + "y": -96 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 456, + "y": -168 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 960, - "y": -608 + "x": 304, + "y": -64 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 352, - "y": -584 + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [ + { + "x": 400, + "y": -168 + } + ] + }, + { + "source": { + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + }, + "target": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "type": "basic.output", + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } + } + ] + } + } + }, + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { + "package": { + "name": "AdderC-1bit", + "version": "0.1", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 960, - "y": -544 + "x": 504, + "y": -208 } }, { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "name": "a", + "clock": false }, "position": { - "x": 184, - "y": -472 + "x": 136, + "y": -192 } }, { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "type": "basic.inputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "a", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "blockColor": "fuchsia" + "virtual": true }, "position": { - "x": 8, - "y": -440 + "x": 272, + "y": -192 } }, { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" + }, + "position": { + "x": 1112, + "y": -176 + } + }, + { + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "b" }, "position": { - "x": 184, - "y": -408 + "x": 504, + "y": -144 } }, { - "id": "63477487-9493-4058-a7e1-9bab443ec466", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "b", + "clock": false }, "position": { - "x": -320, - "y": -384 + "x": 136, + "y": -120 } }, { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -120 + } + }, + { + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": -96 + } + }, + { + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false + }, + "position": { + "x": 136, + "y": -40 + } + }, + { + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "blockColor": "fuchsia" + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -368 + "x": 272, + "y": -40 } }, { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a" + }, "position": { - "x": -168, - "y": -384 + "x": 480, + "y": 24 + } + }, + { + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 992, + "y": 56 + } + }, + { + "id": "edf4525b-edd8-40fa-b784-631b102fb907", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b" + }, + "position": { + "x": 480, + "y": 88 + } + }, + { + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 648, + "y": 120 + } + }, + { + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "position": { + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -6279,11 +6689,11 @@ } }, { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -632 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -6291,11 +6701,11 @@ } }, { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 352, - "y": -456 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -6303,11 +6713,11 @@ } }, { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 760, - "y": -544 + "x": 632, + "y": -192 }, "size": { "width": 96, @@ -6315,435 +6725,381 @@ } }, { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 520, - "y": -600 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "port": "outlabel" }, "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } } ] } } }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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" + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 104 + "x": 112, + "y": 40 } }, { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "" }, "position": { - "x": 120, - "y": 208 + "x": 608, + "y": 72 } }, { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 232 + "x": 112, + "y": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", "type": "basic.code", "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", "params": [], "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "a" + }, + { + "name": "b" } ], "out": [ { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 + "name": "c" } ] } }, "position": { - "x": 272, - "y": 176 + "x": 256, + "y": 48 }, "size": { - "width": 240, - "height": 120 + "width": 312, + "height": 104 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } } ] } } }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "" }, "position": { - "x": 8, - "y": -744 + "x": 456, + "y": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "x": 168, + "y": 112 }, - "position": { - "x": 920, - "y": -696 + "size": { + "width": 248, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "source": { + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, - "position": { - "x": 8, - "y": -688 + "target": { + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } - }, + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "3" }, "position": { "x": 576, - "y": -672 + "y": 80 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "2" }, "position": { - "x": 8, - "y": -632 + "x": 600, + "y": 144 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", "type": "basic.input", "data": { "name": "", @@ -6752,785 +7108,709 @@ "size": 4 }, "position": { - "x": -312, - "y": -632 + "x": 128, + "y": 184 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "1" }, "position": { - "x": 456, - "y": -584 + "x": 592, + "y": 240 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "0" }, "position": { - "x": 8, - "y": -576 + "x": 568, + "y": 296 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": 456, - "y": -528 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": -312, - "y": -384 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" }, - "position": { - "x": 328, - "y": -376 - } - }, - { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "position": { - "x": 1064, - "y": -368 - } - }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "3", + "clock": false }, "position": { - "x": -16, - "y": -320 + "x": 80, + "y": 64 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "2", + "clock": false }, "position": { - "x": 184, - "y": -296 + "x": 80, + "y": 136 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": -32, - "y": -264 + "x": 712, + "y": 200 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 184, - "y": -232 - } - }, - { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "name": "1", + "clock": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 608, - "y": -544 - }, - "size": { - "width": 96, - "height": 96 + "x": 80, + "y": 208 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", + "data": { + "name": "0", + "clock": false }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": -152, - "y": -664 - }, - "size": { - "width": 96, - "height": 128 + "x": 80, + "y": 272 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 744, - "y": -688 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 344, + "height": 104 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" + }, + "vertices": [ + { + "x": 200, + "y": 176 + } + ] }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } - }, - { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "size": 4 + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 128, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 640, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 128, + "y": 224 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "position": { + "x": 296, + "y": 176 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 4 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 4 + } + ] + } + } + }, + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "package": { + "name": "AdderC-4bits", + "version": "0.1", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -744 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -736 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 920, + "y": -696 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 8, + "y": -688 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 576, + "y": -672 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 8, + "y": -632 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": 4 + "position": { + "x": -312, + "y": -632 + } }, { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, - "size": 4 + "position": { + "x": 456, + "y": -584 + } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "position": { + "x": 8, + "y": -576 + } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": 456, + "y": -528 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": -8, + "y": -448 } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -224 + "x": 328, + "y": -440 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": -176 + "x": -8, + "y": -384 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", "type": "basic.input", "data": { "name": "", - "clock": false + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 280, - "y": -152 + "x": -312, + "y": -384 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", "data": { - "name": "s" + "blockColor": "fuchsia", + "name": "b1" }, "position": { - "x": 616, - "y": -96 - } - }, - { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 456, - "y": -168 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", - "position": { - "x": 304, - "y": -64 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] - }, - { - "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" - }, - "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 504, - "y": -208 + "x": 328, + "y": -376 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", "data": { - "name": "a", - "clock": false + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 136, - "y": -192 + "x": 1064, + "y": -368 } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "id": "527c9113-e440-454b-b427-182b646c10f5", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "a", + "name": "b1", "pins": [ { "index": "0", @@ -7541,51 +7821,29 @@ "virtual": true }, "position": { - "x": 272, - "y": -192 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" - }, - "position": { - "x": 1112, - "y": -176 + "x": -16, + "y": -320 } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 504, - "y": -144 - } - }, - { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 136, - "y": -120 + "x": 184, + "y": -296 } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", + "id": "b652825e-10ba-47cc-9832-e39d73586234", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "b", + "name": "b0", "pins": [ { "index": "0", @@ -7593,1767 +7851,1594 @@ "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 272, - "y": -120 + "x": -32, + "y": -264 } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "ci", + "blockColor": "fuchsia", + "name": "b0", "oldBlockColor": "fuchsia" }, "position": { - "x": 648, - "y": -96 + "x": 184, + "y": -232 } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", "type": "basic.input", "data": { "name": "ci", "clock": false }, "position": { - "x": 136, - "y": -40 + "x": -296, + "y": -168 } }, { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 272, - "y": -40 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 480, - "y": 24 + "x": 608, + "y": -544 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" - }, + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 992, - "y": 56 + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 } }, { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" - }, - "position": { - "x": 480, - "y": 88 - } - }, - { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 648, - "y": 120 - } - }, - { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 832, - "y": 56 + "x": -152, + "y": -664 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 808, - "y": -80 + "x": 896, + "y": -400 }, "size": { "width": 96, - "height": 64 + "height": 128 } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 632, - "y": -192 + "x": 744, + "y": -688 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 960, - "y": -176 + "x": 320, + "y": -248 }, "size": { "width": 96, - "height": 64 + "height": 96 } } ], "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", + "block": "527c9113-e440-454b-b427-182b646c10f5", "port": "inlabel" } }, { "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", + "block": "b652825e-10ba-47cc-9832-e39d73586234", "port": "inlabel" } }, { "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", "port": "outlabel" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" + }, + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, + { + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { - "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 120, - "y": 48 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 560, - "y": 72 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 120, - "y": 104 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 272, - "height": 112 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } - } - ], - "wires": [ + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" - } + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" }, - "position": { - "x": 112, - "y": 40 - } + "size": 4 }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, - "position": { - "x": 608, - "y": 72 - } - }, - { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", - "data": { - "name": "" + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" }, - "position": { - "x": 112, - "y": 96 - } + "size": 4 }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", - "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 256, - "y": 48 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" }, - "size": { - "width": 312, - "height": 104 - } - } - ], - "wires": [ + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, { "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" }, "position": { - "x": 456, - "y": 120 + "x": -64, + "y": -648 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "type": "basic.input", "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 168, - "y": 112 - }, - "size": { - "width": 248, - "height": 80 - } - } - ], - "wires": [ - { - "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" - }, - "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" + "x": -408, + "y": -584 } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", - "type": "basic.input", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "type": "basic.inputLabel", "data": { - "name": "1", + "name": "a0", "range": "[3:0]", - "clock": false, - "size": 4 + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 128, - "y": 168 + "x": -64, + "y": -568 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "size": 8 + "name": "c" }, "position": { - "x": 640, - "y": 200 + "x": 832, + "y": -480 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "type": "basic.input", + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", "data": { - "name": "0", + "name": "a1", "range": "[3:0]", - "clock": false, + "blockColor": "deeppink", "size": 4 }, "position": { - "x": 128, - "y": 224 + "x": 248, + "y": -456 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[7:0]", - "size": 8 - } - ] - } + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": -80, + "y": -448 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", - "port": "in" - }, - "size": 8 }, { - "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", + "data": { + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "size": 4 + "position": { + "x": -400, + "y": -392 + } }, { - "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - }, - "size": 4 - } - ] - } - } - }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { - "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", "type": "basic.inputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", + "name": "b0", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true, - "oldBlockColor": "deeppink" + "blockColor": "fuchsia" }, "position": { - "x": 8, - "y": -744 + "x": -80, + "y": -376 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 576, - "y": -736 + "x": 248, + "y": -376 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", "type": "basic.output", "data": { - "name": "c" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 920, - "y": -696 + "x": 840, + "y": -336 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", "data": { + "name": "a0", + "range": "[3:0]", "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "size": 4 }, "position": { - "x": 8, - "y": -688 + "x": 120, + "y": -304 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", "type": "basic.outputLabel", "data": { + "name": "b0", + "range": "[3:0]", "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "size": 4 }, "position": { - "x": 576, - "y": -672 + "x": 120, + "y": -232 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "ci", + "clock": false }, "position": { - "x": 8, - "y": -632 + "x": -392, + "y": -168 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": -312, - "y": -632 + "x": -248, + "y": -392 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" - }, + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 456, + "x": -240, "y": -584 - } - }, - { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" }, - "position": { - "x": 8, - "y": -576 + "size": { + "width": 96, + "height": 64 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" - }, + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 456, - "y": -528 - } - }, - { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "x": 688, + "y": -336 }, - "position": { - "x": -8, - "y": -448 + "size": { + "width": 96, + "height": 64 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" - }, + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 328, - "y": -440 + "x": 320, + "y": -248 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": -8, - "y": -384 + "x": 464, + "y": -392 + }, + "size": { + "width": 96, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": -312, - "y": -384 - } + "target": { + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "port": "inlabel" + }, + "size": 4 }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1" + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": 328, - "y": -376 - } + "target": { + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", - "data": { - "name": "s", - "range": "[3:0]", + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "size": 4 }, - "position": { - "x": 1064, - "y": -368 - } + "target": { + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "port": "inlabel" + }, + "size": 4 }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "position": { - "x": -16, - "y": -320 - } - }, - { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" }, - "position": { - "x": 184, - "y": -296 - } + "size": 4 }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "port": "outlabel" }, - "position": { - "x": -32, - "y": -264 - } - }, - { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "position": { - "x": 184, - "y": -232 - } + "size": 4 }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false + "source": { + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" }, - "position": { - "x": -296, - "y": -168 - } - }, - { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 96 - } + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "source": { + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "size": 4 }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 + "source": { + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "size": { - "width": 96, - "height": 128 - } + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 744, - "y": -688 + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 96 + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, - { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 320, - "y": -248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" - } + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] + } + ] + } + } + }, + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "package": { + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 120, + "y": 168 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 632, + "y": 200 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "type": "basic.input", + "data": { + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": 120, + "y": 264 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "i0", + "range": "[7:0]", + "size": 8 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 296, + "y": 176 + }, + "size": { + "width": 272, + "height": 104 } - }, + } + ], + "wires": [ { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "port": "out" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", + "port": "out" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] - }, + "size": 8 + } + ] + } + } + }, + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { + "package": { + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 920, + "y": -24 } }, { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", + "type": "basic.output", + "data": { + "name": "nc" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 920, + "y": 56 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 368, + "y": 64 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", + "data": { + "name": "rst", + "clock": false }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 376, + "y": 200 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 920, + "y": 200 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 376, + "y": 336 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": 4 + "position": { + "x": 656, + "y": -80 + } }, { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", + "data": { + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "position": { + "x": 528, + "y": 32 }, - "size": 4 - }, + "size": { + "width": 344, + "height": 400 + } + } + ], + "wires": [ { "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" }, "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", "port": "in" }, - "size": 4 + "vertices": [], + "size": 16 }, { "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "vertices": [] }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" } }, { "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" }, "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" + }, + "size": 16 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", "port": "out" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" } } ] } } }, - "c3c498191b14e9288a85fa2871b3966665f75475": { + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "name": "a1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "name": "nc" }, "position": { - "x": -64, - "y": -648 + "x": 384, + "y": -80 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "clock": true }, "position": { - "x": -408, - "y": -584 + "x": -136, + "y": -16 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "type": "basic.inputLabel", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "type": "basic.output", "data": { - "name": "a0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "name": "" }, "position": { - "x": -64, - "y": -568 + "x": 384, + "y": 56 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", "data": { - "name": "c" + "name": "", + "clock": false }, "position": { - "x": 832, - "y": -480 + "x": -136, + "y": 128 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "type": "basic.outputLabel", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 248, - "y": -456 + "x": 32, + "y": -56 + }, + "size": { + "width": 296, + "height": 288 + } + } + ], + "wires": [ + { + "source": { + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" } }, { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" }, - "position": { - "x": -80, - "y": -448 + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" + }, + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[7:0]", + "clock": true + }, + "position": { + "x": 216, + "y": -40 + } + }, + { + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 368, + "y": -40 + } + }, + { + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", + "data": { + "name": "data", + "range": "[15:0]", "clock": false, - "size": 8 + "size": 16 }, "position": { - "x": -400, - "y": -392 + "x": 200, + "y": 128 } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -80, - "y": -376 + "x": 344, + "y": 128 } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "size": 4 + "size": 16 }, "position": { - "x": 248, - "y": -376 + "x": 560, + "y": 128 } }, { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", "type": "basic.output", "data": { - "name": "s", + "name": "LED", "range": "[7:0]", "size": 8 }, "position": { - "x": 840, - "y": -336 + "x": 1136, + "y": 144 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -304 + "x": 600, + "y": 240 } }, { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" + }, + "position": { + "x": 1208, + "y": 296 + } + }, + { + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "type": "basic.outputLabel", "data": { - "name": "b0", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "ticsel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": -232 + "x": 600, + "y": 312 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "ci", + "name": "sel", "clock": false }, "position": { - "x": -392, - "y": -168 + "x": 200, + "y": 320 } }, { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" + }, "position": { - "x": -248, - "y": -392 + "x": 344, + "y": 320 + } + }, + { + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", + "data": { + "name": "b0" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 1216, + "y": 376 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": -240, - "y": -584 + "x": 1064, + "y": 376 }, "size": { "width": 96, @@ -9361,23 +9446,27 @@ } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true + }, "position": { - "x": 688, - "y": -336 + "x": 1344, + "y": 376 }, "size": { - "width": 96, - "height": 64 + "width": 184, + "height": 56 } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 320, - "y": -248 + "x": 952, + "y": 128 }, "size": { "width": 96, @@ -9385,1224 +9474,1175 @@ } }, { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 464, - "y": -392 + "x": 720, + "y": 128 }, "size": { "width": 96, - "height": 96 + "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", - "port": "inlabel" + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", + "position": { + "x": 744, + "y": 296 }, - "size": 4 - }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" }, - "size": 4 + "vertices": [] }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "port": "outlabel" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + } }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "port": "inlabel" }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], - "size": 4 + "size": 16 }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "block": "514effa0-6d57-4281-b479-22d05798dceb", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 }, - "size": 4 + "size": 16 }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], - "size": 4 - }, - { - "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" }, - "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "size": 8 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" - }, - "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" }, "size": 8 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "port": "in" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" + } }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - }, - "vertices": [ - { - "x": 624, - "y": -392 - } - ] + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "d1a52ec25aee5e4823102a32325600666fe99e12": { "package": { - "name": "Bus16-Join-half", + "name": "8-bits-Mux-2-1", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "2-to-1 Multplexer (8-bit channels)", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 120, - "y": 168 + "x": 768, + "y": 192 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 632, - "y": 200 + "x": 552, + "y": 208 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", + "id": "520455a3-592c-4fd0-ade9-62d366c88919", "type": "basic.input", "data": { - "name": "0", + "name": "1", "range": "[7:0]", "clock": false, "size": 8 }, "position": { - "x": 120, + "x": 200, "y": 264 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } - }, - "position": { - "x": 296, - "y": 176 + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, - "size": { - "width": 272, - "height": 104 + "position": { + "x": 768, + "y": 264 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", + "data": { + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "size": 8 + "position": { + "x": 544, + "y": 280 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": 808, + "y": 416 + } + }, { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[7:0]", + "size": 8 }, "position": { - "x": 88, - "y": 152 + "x": 1336, + "y": 432 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "type": "basic.input", + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": false + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, "position": { - "x": 88, - "y": 280 + "x": 584, + "y": 528 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "type": "basic.output", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 616, - "y": 352 + "x": 808, + "y": 552 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", + "type": "basic.input", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "name": "0", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 + "x": 208, + "y": 592 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "type": "basic.inputLabel", "data": { - "info": "Input signal", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": 584, + "y": 608 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "type": "basic.outputLabel", "data": { - "info": "System clock", - "readonly": true + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 808, + "y": 616 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "info": "Current signal \nstate", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 808, + "y": 680 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "name": "sel", + "clock": false }, "position": { - "x": 328, - "y": 200 + "x": 392, + "y": 768 + } + }, + { + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "type": "basic.inputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 248, - "height": 48 + "position": { + "x": 552, + "y": 768 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", "type": "basic.info", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "info": "Channel B", "readonly": true }, "position": { - "x": 504, - "y": 264 + "x": 424, + "y": 512 }, "size": { - "width": 400, - "height": 72 + "width": 144, + "height": 32 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 480, - "y": 352 + "x": 968, + "y": 568 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", "type": "basic.info", "data": { - "info": "In any other case the output is 0", + "info": "Channel A", "readonly": true }, "position": { - "x": 520, - "y": 432 + "x": 424, + "y": 168 }, "size": { - "width": 296, - "height": 40 + "width": 144, + "height": 32 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 320, - "y": 264 + "x": 1152, + "y": 432 }, "size": { "width": 96, "height": 64 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 376, + "y": 264 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "size": { + "width": 96, + "height": 64 } }, { - "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": 392, + "y": 592 }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 64 } }, + { + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", + "position": { + "x": 960, + "y": 248 + }, + "size": { + "width": 96, + "height": 96 + } + } + ], + "wires": [ { "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "port": "inlabel" } }, { "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "port": "outlabel" }, "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, "vertices": [ { - "x": 264, - "y": 368 + "x": 928, + "y": 624 } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": -256, - "y": -56 - } + ], + "size": 4 }, { - "id": "e226f910-14af-473d-956b-03559f466726", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "source": { + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" }, - "position": { - "x": -104, - "y": -56 - } - }, - { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "target": { + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "position": { - "x": 128, - "y": 32 - } + "size": 4 }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "source": { + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -56, - "y": 72 - } - }, - { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", - "data": { - "name": "" + "target": { + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" }, - "position": { - "x": 424, - "y": 128 - } + "size": 4 }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, - "position": { - "x": -64, - "y": 160 - } + "target": { + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" + }, + "size": 4 }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 104, - "y": 144 + "source": { + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 280, - "y": 128 + "source": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ + "target": { + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" + }, + "size": 4 + }, { "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "e226f910-14af-473d-956b-03559f466726", + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", "port": "inlabel" - } + }, + "size": 4 }, { "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", "port": "outlabel" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "port": "out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - } + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "520455a3-592c-4fd0-ade9-62d366c88919", + "port": "out" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" - } - } - ] + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" + }, + "target": { + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" + }, + "target": { + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "vertices": [ + { + "x": 1088, + "y": 360 + } + ], + "size": 4 + } + ] } } }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "name": "4-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (4-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 824, - "y": 304 + "x": 712, + "y": -72 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 376, - "y": 320 + "x": 712, + "y": 0 } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "not", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 520, - "y": 160 + "x": 712, + "y": 72 } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 632, - "y": 392 - }, - "size": { - "width": 336, - "height": 96 + "x": 712, + "y": 160 } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 8 - }, - "size": { - "width": 296, - "height": 144 + "x": 432, + "y": 160 } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", "position": { - "x": 520, - "y": 256 - }, - "size": { - "width": 96, - "height": 64 + "x": 440, + "y": 224 } - } - ], - "wires": [ - { - "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" - }, - "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" - }, - "vertices": [] }, { - "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 712, + "y": 232 } }, { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" + "position": { + "x": 120, + "y": 240 } }, { - "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 960, - "y": 248 + "x": 432, + "y": 296 } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 128 + "x": 712, + "y": 304 } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", "data": { - "code": "assign k = VALUE;", - "params": [ + "blockColor": "fuchsia", + "name": "A0", + "pins": [ { - "name": "VALUE" + "index": "0", + "name": "NULL", + "value": "NULL" } ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 672, - "y": 248 - }, - "size": { - "width": 208, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" - }, - "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "x": 416, + "y": 360 } }, { - "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A1", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "port": "in" + "position": { + "x": 712, + "y": 400 } - } - ] - } - } - }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { - "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { "name": "", - "clock": true + "range": "[3:0]", + "size": 4 }, "position": { - "x": 216, - "y": -40 + "x": 1256, + "y": 416 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "turquoise", + "name": "B3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 368, - "y": -40 + "x": 456, + "y": 464 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "type": "basic.input", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", + "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 200, - "y": 128 + "x": 712, + "y": 488 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "turquoise", + "name": "B2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 344, - "y": 128 + "x": 464, + "y": 528 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 120, + "y": 544 + } + }, + { + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "type": "basic.outputLabel", "data": { - "name": "data", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": 712, + "y": 560 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", "data": { - "name": "LED", - "range": "[7:0]", - "size": 8 + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1136, - "y": 144 + "x": 464, + "y": 592 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "A0" }, "position": { - "x": 600, - "y": 240 + "x": 720, + "y": 648 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", "data": { - "name": "byte" + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 1208, - "y": 296 + "x": 432, + "y": 648 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", "type": "basic.outputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "turquoise", + "name": "B0", "oldBlockColor": "fuchsia" }, "position": { - "x": 600, - "y": 312 + "x": 720, + "y": 720 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { "name": "sel", "clock": false }, "position": { - "x": 200, - "y": 320 + "x": 104, + "y": 728 } }, { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "ticsel", + "blockColor": "navy", + "name": "sel", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 344, - "y": 320 + "x": 264, + "y": 728 } }, { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "type": "basic.outputLabel", "data": { - "name": "b0" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 1216, - "y": 376 + "x": 712, + "y": 800 } }, { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 1064, - "y": 376 + "x": 856, + "y": 472 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 864, + "y": 704 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", "type": "basic.info", "data": { - "info": "Byte 0 \n(least significant) ", + "info": "Channel A", "readonly": true }, "position": { - "x": 1344, - "y": 376 + "x": 304, + "y": 128 }, "size": { - "width": 184, - "height": 56 + "width": 144, + "height": 32 } }, { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", + "data": { + "info": "Channel B", + "readonly": true + }, "position": { - "x": 744, - "y": 296 + "x": 304, + "y": 480 + }, + "size": { + "width": 144, + "height": 32 + } + }, + { + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 216 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 952, - "y": 128 + "x": 1040, + "y": 384 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": -16 }, "size": { "width": 96, @@ -10610,653 +10650,503 @@ } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": 720, - "y": 128 + "x": 288, + "y": 512 }, "size": { "width": 96, - "height": 64 + "height": 128 + } + }, + { + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 280, + "y": 208 + }, + "size": { + "width": 96, + "height": 128 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" + } + }, + { + "source": { + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, - "vertices": [] + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", "port": "inlabel" } }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "port": "outlabel" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "port": "inlabel" } }, { "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", "port": "inlabel" + } + }, + { + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "size": 16 + "target": { + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "port": "inlabel" + } }, { "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", "port": "outlabel" }, "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 - }, - "size": 16 + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "port": "outlabel" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, - "size": 8 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + } }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - } - ] - } - } - }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { - "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 232, - "y": -112 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" + "source": { + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, - "position": { - "x": 880, - "y": 16 - } - }, - { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, - "position": { - "x": 464, - "y": 32 - } + "vertices": [] }, { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "port": "outlabel" }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": { - "width": 96, - "height": 64 - } + "vertices": [] }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", - "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "port": "inlabel" } }, { "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", "port": "inlabel" } }, { "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" - } + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + }, + "vertices": [ + { + "x": 984, + "y": 472 + } + ] }, { "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 976, + "y": 352 + } + ] }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", + "port": "in" }, - "vertices": [] + "size": 4 }, { "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" }, "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "port": "out" + }, + "target": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 } ] } } }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "1-bit-reg", + "name": "Mux-2-1", "version": "0.1", - "description": "Reg: 1-Bit register", + "description": "2-to-1 Multplexer (1-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 80, - "y": 440 + "x": 456, + "y": 360 } }, { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "" }, "position": { - "x": 224, - "y": 440 + "x": 1096, + "y": 392 } }, { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", + "name": "1", "clock": false }, "position": { - "x": 80, - "y": 552 + "x": 136, + "y": 416 } }, { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 1152, - "y": 592 + "x": 272, + "y": 416 } }, { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "type": "basic.inputLabel", "data": { "blockColor": "fuchsia", - "name": "curr_bit", + "name": "b", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, "oldBlockColor": "fuchsia" }, "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" - }, - "position": { - "x": 232, - "y": 632 + "x": 272, + "y": 528 } }, { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", "type": "basic.input", "data": { - "name": "load", + "name": "0", "clock": false }, "position": { - "x": 80, - "y": 632 + "x": 136, + "y": 528 } }, { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", + "id": "8d94a294-a698-43c5-9777-874fd39b8586", "type": "basic.outputLabel", "data": { - "blockColor": "darkgreen", - "name": "load", + "blockColor": "fuchsia", + "name": "b", "oldBlockColor": "fuchsia" }, "position": { - "x": 456, - "y": 688 + "x": 616, + "y": 552 } }, { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "name": "", - "value": "0", - "local": false + "name": "sel", + "clock": false }, "position": { - "x": 784, - "y": 504 + "x": 376, + "y": 656 } }, { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 640, - "y": 712 + "x": 952, + "y": 392 }, "size": { - "width": 104, - "height": 40 + "width": 96, + "height": 64 } }, { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 776, - "y": 680 + "x": 600, + "y": 376 }, "size": { - "width": 120, - "height": 48 + "width": 96, + "height": 64 } }, { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 616, - "y": 600 + "x": 624, + "y": 656 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { "x": 784, - "y": 600 + "y": 568 }, "size": { "width": 96, @@ -11267,2662 +11157,348 @@ "wires": [ { "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", "port": "outlabel" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" + "block": "8d94a294-a698-43c5-9777-874fd39b8586", + "port": "outlabel" }, "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, { "source": { "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "port": "out" }, "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "port": "inlabel" } }, { "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", "port": "out" }, "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "port": "inlabel" } }, { "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", "port": "in" - } + }, + "vertices": [] }, { "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] }, { "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] + "vertices": [] }, { "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { - "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 144, - "y": 504 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - } - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 456, - "y": 360 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1096, - "y": 392 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 136, - "y": 416 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": 416 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": 528 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 136, - "y": 528 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 616, - "y": 552 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 376, - "y": 656 - } - }, - { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 952, - "y": 392 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 600, - "y": 376 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 624, - "y": 656 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 784, - "y": 568 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - }, - "vertices": [] - }, - { - "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - } - ] - } - } - }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { - "package": { - "name": "8-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "type": "basic.outputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 768, - "y": 192 - } - }, - { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "type": "basic.inputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 552, - "y": 208 - } - }, - { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", - "type": "basic.input", - "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 200, - "y": 264 - } - }, - { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "type": "basic.outputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 768, - "y": 264 - } - }, - { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "type": "basic.inputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 544, - "y": 280 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 416 - } - }, - { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 1336, - "y": 432 - } - }, - { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "blockColor": "lightseagreen", - "size": 4 - }, - "position": { - "x": 584, - "y": 528 - } - }, - { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "type": "basic.outputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 808, - "y": 552 - } - }, - { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", - "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 208, - "y": 592 - } - }, - { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "type": "basic.inputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 584, - "y": 608 - } - }, - { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "type": "basic.outputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 808, - "y": 616 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 680 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 392, - "y": 768 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 552, - "y": 768 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 424, - "y": 512 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 968, - "y": 568 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 424, - "y": 168 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 1152, - "y": 432 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 376, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 392, - "y": 592 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 960, - "y": 248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 - }, - { - "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" - }, - "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" - }, - "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "vertices": [ - { - "x": 1088, - "y": 360 - } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } - }, - { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 0 - } - }, - { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 72 - } - }, - { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 160 - } - }, - { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 - } - }, - { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 440, - "y": 224 - } - }, - { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 232 - } - }, - { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 240 - } - }, - { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 432, - "y": 296 - } - }, - { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 304 - } - }, - { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 360 - } - }, - { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 400 - } - }, - { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1256, - "y": 416 - } - }, - { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 456, - "y": 464 - } - }, - { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 488 - } - }, - { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 464, - "y": 528 - } - }, - { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 560 - } - }, - { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 592 - } - }, - { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0" - }, - "position": { - "x": 720, - "y": 648 - } - }, - { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 720, - "y": 720 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 104, - "y": 728 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 264, - "y": 728 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 800 - } - }, - { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 216 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 1040, - "y": 384 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": -16 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 288, - "y": 512 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 280, - "y": 208 - }, - "size": { - "width": 96, - "height": 128 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } - }, - { - "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" - } - }, - { - "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] - }, - { - "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] - }, - { - "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" - }, - "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" - }, - "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - } - ] - } - } - }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { - "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 496, - "y": 80 - } - }, - { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "type": "basic.input", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": -16, - "y": 80 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", - "data": { - "info": "Input", - "readonly": true - }, - "position": { - "x": 24, - "y": 56 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 512, - "y": 48 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" - }, - "position": { - "x": 176, - "y": 64 - }, - "size": { - "width": 232, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" - }, - "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "port": "out" - }, - "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" - }, - "size": 16 - } - ] - } - } - }, - "9ba712890c6036b778ef1fa4ad82286a940c17d8": { - "package": { - "name": "UINT16-14bit-verilog", - "version": "0.1", - "description": "UINT32-14bit-verilog: Extend a 14-bit unsigned integer to 32-bits. Verilog implementation ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 920, - "y": 304 - } - }, - { - "id": "80555f8a-c7c0-447f-aca6-b73bb9bdcb33", - "type": "basic.input", - "data": { - "name": "i", - "virtual": true, - "range": "[13:0]", - "pins": [ - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ], + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + }, + { + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + } + ] + } + } + }, + "b7f7136a87c607769a64233fd99bc12818a05746": { + "package": { + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 328, + "y": -80 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 + } + }, + { + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "type": "basic.input", + "data": { + "name": "", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 320, + "y": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i", - "range": "[13:0]", - "size": 14 + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[15:0]", - "size": 16 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 14;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 512, - "y": 272 + "x": 496, + "y": -120 }, "size": { - "width": 344, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" }, "target": { - "block": "be5c72ef-8c14-447a-922c-e38e9ef6baee", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, - "size": 16 + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" + } }, { "source": { - "block": "80555f8a-c7c0-447f-aca6-b73bb9bdcb33", + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 14 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } } }, - "a0afbf4f703cf70f91f16b882db0109a792eafca": { + "ac8531b7172fd396090e91087890576e0c3a13c4": { "package": { - "name": "Copy-14-verilog", - "version": "0.2", - "description": "Copy-14: Copy the input wire twice and generate a 14 bits Bus output (Verilog implementation)", + "name": "14-Uint16", + "version": "0.4", + "description": "14-Uint16: 14 bits unsigned integer extension to 16 bits. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "type": "basic.input", + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { "name": "", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 448, - "y": 176 + "x": 952, + "y": 368 } }, { - "id": "0f8094f9-d01d-4c81-91ff-9940f4bf4b8b", - "type": "basic.output", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { "name": "", - "virtual": true, "range": "[13:0]", - "pins": [ - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "size": 14 }, "position": { - "x": 992, - "y": 176 + "x": 336, + "y": 368 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i" + "name": "i", + "range": "[13:0]", + "size": 14 } ], "out": [ { "name": "o", - "range": "[13:0]", - "size": 14 + "range": "[15:0]", + "size": 16 } ] }, "params": [], - "code": "//-- Number of bits\nlocalparam N=14;\n\nassign o = {N{i}};\n" + "code": "//-- Number of input bits\nlocalparam X = 14;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 632, - "y": 144 + "x": 504, + "y": 272 }, "size": { - "width": 288, - "height": 120 + "width": 384, + "height": 248 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "port": "out" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" - } + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" }, "target": { - "block": "0f8094f9-d01d-4c81-91ff-9940f4bf4b8b", - "port": "in" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" }, "size": 14 } diff --git a/examples/TESTs/Uint/Uint16/15-bits/Alhambra-II/01-Manual-testing.ice b/examples/TESTs/Uint/Uint16/15-bits/Alhambra-II/01-Manual-testing.ice index 49465156..9dae6ce1 100644 --- a/examples/TESTs/Uint/Uint16/15-bits/Alhambra-II/01-Manual-testing.ice +++ b/examples/TESTs/Uint/Uint16/15-bits/Alhambra-II/01-Manual-testing.ice @@ -129,7 +129,7 @@ "id": "fd14ed5d-e91b-42a8-922f-414275d054bf", "type": "basic.info", "data": { - "info": "## Uint32-15bit Manual testing", + "info": "## 15-Uint32 Manual testing", "readonly": true }, "position": { @@ -142,11 +142,11 @@ } }, { - "id": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", - "type": "f343ddae2d2d482122701507323b17ee02880898", + "id": "260a4459-d835-47b0-ab98-ae80ac8da665", + "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", "position": { - "x": 752, - "y": 272 + "x": 728, + "y": 56 }, "size": { "width": 96, @@ -154,23 +154,23 @@ } }, { - "id": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", - "type": "76aa0869ee7611bee922825aab0ac5b7b21559f6", + "id": "867915bc-fb6e-403f-96f2-03d8cac40728", + "type": "cca3f5efa870625302ad0914956497d4ff3d3aa0", "position": { - "x": 944, - "y": 40 + "x": 344, + "y": 56 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "260a4459-d835-47b0-ab98-ae80ac8da665", - "type": "af4945816b7b0bf62a397343ee5ee1c196f0c9b3", + "id": "1b467dc2-394e-4b04-a5eb-6da2b8f74a7e", + "type": "5018a67fe520592d7f82dbf669bb3c3661624b65", "position": { - "x": 728, - "y": 56 + "x": 752, + "y": 272 }, "size": { "width": 96, @@ -178,22 +178,22 @@ } }, { - "id": "d85a7cf7-ffd1-4757-97aa-8d44406b6c8f", - "type": "500ce5c329eaf974fb5327a00db1e7e9ab6ddf69", + "id": "658ab584-85b1-44bd-96dd-d15b2fd54ac5", + "type": "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd", "position": { - "x": 544, - "y": 56 + "x": 944, + "y": 40 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "867915bc-fb6e-403f-96f2-03d8cac40728", - "type": "cca3f5efa870625302ad0914956497d4ff3d3aa0", + "id": "648cefc6-b32b-4cd4-8cd7-f8eb50772831", + "type": "8465270d2dfe3d8f6eb872bf86a1c22e138038cb", "position": { - "x": 344, + "x": 544, "y": 56 }, "size": { @@ -215,7 +215,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "658ab584-85b1-44bd-96dd-d15b2fd54ac5", "port": "e1862e57-1abc-4f76-84f6-3c3d71126ba8" }, "target": { @@ -226,7 +226,7 @@ }, { "source": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "658ab584-85b1-44bd-96dd-d15b2fd54ac5", "port": "31636314-c790-4631-b8c2-1dad55572202" }, "target": { @@ -240,17 +240,17 @@ "port": "out" }, "target": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "1b467dc2-394e-4b04-a5eb-6da2b8f74a7e", "port": "21bc142d-a93a-430d-b37a-326435def9f9" } }, { "source": { - "block": "5e2031a9-f6de-4ff6-8d28-aacd4ffca049", + "block": "1b467dc2-394e-4b04-a5eb-6da2b8f74a7e", "port": "997db8c4-b772-49d8-83e7-4427aff720e6" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "658ab584-85b1-44bd-96dd-d15b2fd54ac5", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, @@ -260,15 +260,15 @@ "port": "d2102e2d-8694-4709-a322-ba6384dcf9c8" }, "target": { - "block": "971fe15f-e97d-4d47-8337-3d38cde0a6b7", + "block": "658ab584-85b1-44bd-96dd-d15b2fd54ac5", "port": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b" }, "size": 16 }, { "source": { - "block": "d85a7cf7-ffd1-4757-97aa-8d44406b6c8f", - "port": "2d39ed05-57ec-45b3-b3b6-1522a135e596" + "block": "648cefc6-b32b-4cd4-8cd7-f8eb50772831", + "port": "e0cb078e-5589-4f38-983f-ff5d02d74932" }, "target": { "block": "260a4459-d835-47b0-ab98-ae80ac8da665", @@ -282,8 +282,8 @@ "port": "8dbc1d1a-647a-4892-8b61-e6fd6a8db8c3" }, "target": { - "block": "d85a7cf7-ffd1-4757-97aa-8d44406b6c8f", - "port": "13a4e0ad-5760-4e98-bf2a-7c86f6896b39" + "block": "648cefc6-b32b-4cd4-8cd7-f8eb50772831", + "port": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d" }, "size": 15 } @@ -291,167 +291,631 @@ } }, "dependencies": { - "f343ddae2d2d482122701507323b17ee02880898": { + "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { "package": { - "name": "Button-tic", - "version": "0.6", - "description": "Button-tic: Configurable button that emits a tic when it is pressed", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + "name": "not-x16", + "version": "2.0", + "description": "not-x16: 16-bits not gate", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", - "type": "basic.input", + "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "type": "basic.output", "data": { "name": "", - "clock": true + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 128, - "y": -32 + "x": 496, + "y": 80 } }, { - "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", - "type": "basic.inputLabel", + "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "", + "virtual": true, + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "NULL", + "value": "NULL" + }, + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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": 280, - "y": -32 + "x": -16, + "y": 80 } }, { - "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", - "type": "basic.output", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { - "name": "s" + "info": "Input", + "readonly": true }, "position": { - "x": 728, - "y": -16 + "x": 24, + "y": 56 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", - "type": "basic.outputLabel", + "id": "8408dd5f-945f-4a89-9790-7752813d4e91", + "type": "basic.info", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "info": "Output", + "readonly": true }, "position": { - "x": 312, - "y": 104 + "x": 512, + "y": 48 + }, + "size": { + "width": 80, + "height": 40 } }, { - "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", - "type": "basic.outputLabel", + "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "ports": { + "in": [ + { + "name": "i", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "o", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [], + "code": "//-- NOT\nassign o = ~i;" }, "position": { - "x": 744, - "y": 136 + "x": 176, + "y": 64 + }, + "size": { + "width": 232, + "height": 96 } - }, + } + ], + "wires": [ { - "id": "997db8c4-b772-49d8-83e7-4427aff720e6", - "type": "basic.output", - "data": { - "name": "Press" + "source": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "o" }, - "position": { - "x": 1024, - "y": 168 - } + "target": { + "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", + "port": "in" + }, + "size": 16 }, { - "id": "21bc142d-a93a-430d-b37a-326435def9f9", - "type": "basic.input", - "data": { - "name": "pin", - "clock": false + "source": { + "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", + "port": "out" }, - "position": { - "x": 304, - "y": 200 - } - }, + "target": { + "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", + "port": "i" + }, + "size": 16 + } + ] + } + } + }, + "cca3f5efa870625302ad0914956497d4ff3d3aa0": { + "package": { + "name": "Copy-15-verilog", + "version": "0.2", + "description": "Copy-15: Copy the input wire twice and generate a 15 bits Bus output (Verilog implementation)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", - "type": "basic.constant", + "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "type": "basic.input", "data": { - "name": "pup", - "value": "0", - "local": false + "name": "", + "clock": false }, "position": { "x": 448, - "y": 56 + "y": 176 } }, { - "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", - "type": "basic.constant", + "id": "8dbc1d1a-647a-4892-8b61-e6fd6a8db8c3", + "type": "basic.output", "data": { - "name": "not", - "value": "0", - "local": false + "name": "", + "virtual": true, + "range": "[14:0]", + "pins": [ + { + "index": "14", + "name": "NULL", + "value": "NULL" + }, + { + "index": "13", + "name": "NULL", + "value": "NULL" + }, + { + "index": "12", + "name": "NULL", + "value": "NULL" + }, + { + "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" + } + ] }, "position": { - "x": 560, - "y": 56 + "x": 992, + "y": 176 } }, { - "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", - "type": "basic.info", + "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "type": "basic.code", "data": { - "info": "System clock", - "readonly": true + "ports": { + "in": [ + { + "name": "i" + } + ], + "out": [ + { + "name": "o", + "range": "[14:0]", + "size": 15 + } + ] + }, + "params": [], + "code": "//-- Number of bits\nlocalparam N=15;\n\nassign o = {N{i}};\n" }, "position": { - "x": 136, - "y": -56 + "x": 632, + "y": 144 }, "size": { - "width": 136, - "height": 40 + "width": 288, + "height": 120 } - }, + } + ], + "wires": [ { - "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", - "type": "basic.info", - "data": { - "info": "Button state signal", - "readonly": true - }, - "position": { - "x": 720, - "y": -32 + "source": { + "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", + "port": "out" }, - "size": { - "width": 176, - "height": 40 + "target": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "i" } }, { - "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", - "type": "basic.info", - "data": { - "info": "Tic: button pressed", - "readonly": true + "source": { + "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "port": "o" }, - "position": { + "target": { + "block": "8dbc1d1a-647a-4892-8b61-e6fd6a8db8c3", + "port": "in" + }, + "size": 15 + } + ] + } + } + }, + "5018a67fe520592d7f82dbf669bb3c3661624b65": { + "package": { + "name": "Button-tic", + "version": "0.6", + "description": "Button-tic: Configurable button that emits a tic when it is pressed", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22293.977%22%20height=%22257.958%22%20viewBox=%220%200%2077.781366%2068.251365%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cg%20transform=%22matrix(1.2877%200%200%201.2877%20-70.904%20-45.941)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "653b2ced-3f13-4b1d-a2b6-c330c671067a", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": -32 + } + }, + { + "id": "98209ccc-d0f3-48fc-b10b-c2865b7442fc", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" + }, + "position": { + "x": 280, + "y": -32 + } + }, + { + "id": "b58132b2-2e39-4a85-ab5b-63bded91cecc", + "type": "basic.output", + "data": { + "name": "s" + }, + "position": { + "x": 728, + "y": -16 + } + }, + { + "id": "2f9cf56e-789c-4621-923a-be59ef6ccd4a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 312, + "y": 104 + } + }, + { + "id": "b8666bca-0d3d-4cbb-8129-fcea674d428a", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 744, + "y": 136 + } + }, + { + "id": "997db8c4-b772-49d8-83e7-4427aff720e6", + "type": "basic.output", + "data": { + "name": "Press" + }, + "position": { + "x": 1032, + "y": 184 + } + }, + { + "id": "21bc142d-a93a-430d-b37a-326435def9f9", + "type": "basic.input", + "data": { + "name": "pin", + "clock": false + }, + "position": { + "x": 304, + "y": 200 + } + }, + { + "id": "7f2c89d2-aea0-4ff9-b4f9-52d70cefa867", + "type": "basic.constant", + "data": { + "name": "pup", + "value": "0", + "local": false + }, + "position": { + "x": 448, + "y": 56 + } + }, + { + "id": "1ff8ad12-4df4-4aee-922b-c0c0fb449926", + "type": "basic.constant", + "data": { + "name": "not", + "value": "0", + "local": false + }, + "position": { + "x": 560, + "y": 56 + } + }, + { + "id": "15503ba9-0846-4d76-9fa4-dd8f67da8f08", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 136, + "y": -56 + }, + "size": { + "width": 136, + "height": 40 + } + }, + { + "id": "8f811ac3-ce9d-4e72-af71-03036c9426e7", + "type": "basic.info", + "data": { + "info": "Button state signal", + "readonly": true + }, + "position": { + "x": 720, + "y": -32 + }, + "size": { + "width": 176, + "height": 40 + } + }, + { + "id": "dee7b550-b7f2-40d7-955d-bfb931daba22", + "type": "basic.info", + "data": { + "info": "Tic: button pressed", + "readonly": true + }, + "position": { "x": 1024, "y": 152 }, @@ -509,8 +973,8 @@ } }, { - "id": "55de191a-0bf0-4e2c-b2b9-fde52111025f", - "type": "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb", + "id": "541797cf-83f6-45cf-9a33-0009bb231e47", + "type": "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e", "position": { "x": 888, "y": 168 @@ -521,8 +985,8 @@ } }, { - "id": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", - "type": "0b641dd31ecc9ec9194efd886de27cadd758656b", + "id": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", + "type": "091b3514573becaa7196cc3f7854140e5773864d", "position": { "x": 496, "y": 184 @@ -551,7 +1015,7 @@ "port": "outlabel" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "59f7bee9-9832-421d-aa0a-de177f3f121d" }, "vertices": [ @@ -567,7 +1031,7 @@ "port": "outlabel" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "2708468d-1088-4570-be63-fb0d4799a941" } }, @@ -577,13 +1041,13 @@ "port": "out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -593,18 +1057,18 @@ }, { "source": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" }, "vertices": [] }, { "source": { - "block": "55de191a-0bf0-4e2c-b2b9-fde52111025f", + "block": "541797cf-83f6-45cf-9a33-0009bb231e47", "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" }, "target": { @@ -618,7 +1082,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "07e7cb88-d87c-4aa3-9938-fc226e3f4815" } }, @@ -628,7 +1092,7 @@ "port": "constant-out" }, "target": { - "block": "15a43e9c-0c1f-47fa-a33f-b5b0e9c7f1c8", + "block": "eed1d43a-6faf-4ca5-b3b8-f1e071234e0f", "port": "6aacd3c5-a3e9-4a17-afb8-2b1271b3054c" } } @@ -636,11 +1100,11 @@ } } }, - "31e84ed10b0b8e1c6ce6cf1f88c55d2e322116fb": { + "ae13be3e513e7cb48d47d3fb3aa840dd85dc1f5e": { "package": { "name": "Rising-edge-detector", - "version": "0.3", - "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input", + "version": "0.4", + "description": "Rising-edge detector. It generates a 1-period pulse (tic) when a rising edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22185.363%22%20height=%22183.398%22%20viewBox=%220%200%2049.043981%2048.524089%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M13.478%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2012.436L12.673%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-48.178%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, @@ -659,6 +1123,17 @@ "y": 152 } }, + { + "id": "9215ae7b-9960-4c8e-b80c-4d636db8510d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 840, + "y": 160 + } + }, { "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "type": "basic.input", @@ -795,11 +1270,11 @@ } }, { - "id": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "70cfa680-3def-482c-b194-054c1f522357", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 320, - "y": 264 + "x": 552, + "y": 280 }, "size": { "width": 96, @@ -807,11 +1282,11 @@ } }, { - "id": "70cfa680-3def-482c-b194-054c1f522357", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 552, - "y": 264 + "x": 696, + "y": 400 }, "size": { "width": 96, @@ -819,11 +1294,11 @@ } }, { - "id": "49c498a6-eb89-4e72-889d-26e39cea5ad0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", + "id": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 696, - "y": 400 + "x": 320, + "y": 264 }, "size": { "width": 96, @@ -838,7 +1313,7 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" } }, @@ -848,13 +1323,13 @@ "port": "out" }, "target": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "34abb6cc-adcc-4b19-9cb6-563ef36542fe", + "block": "4f9cbe33-5c5a-43fb-bb20-863555cd0c64", "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { @@ -896,290 +1371,70 @@ } } }, - "053dc2e26797e60dd454402e395eb23f388681b9": { + "3676a00f3a70e406487ed14b901daf3e4984e63d": { "package": { - "name": "DFF", + "name": "NOT", "version": "2.0", - "description": "D Flip-flop (verilog implementation)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" + "description": "NOT gate (Verilog implementation)", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": 208, - "y": 160 + "x": 112, + "y": 72 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", "type": "basic.output", "data": { "name": "" }, "position": { - "x": 816, - "y": 224 + "x": 560, + "y": 72 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", + "type": "basic.code", "data": { - "name": "", - "clock": false + "code": "//-- NOT Gate\nassign q = ~a;\n\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + } + ], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 208, - "y": 304 + "x": 256, + "y": 48 + }, + "size": { + "width": 256, + "height": 104 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 512, - "y": 64 - } - }, - { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", - "data": { - "code": "//-- Initial value\nreg q = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 384, - "y": 168 - }, - "size": { - "width": 344, - "height": 176 - } - }, - { - "id": "53d11290-50b3-40fb-b253-222cb296b075", - "type": "basic.info", - "data": { - "info": "Parameter: Initial value", - "readonly": true - }, - "position": { - "x": 488, - "y": 48 - }, - "size": { - "width": 208, - "height": 40 - } - }, - { - "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", - "type": "basic.info", - "data": { - "info": "System clock", - "readonly": true - }, - "position": { - "x": 208, - "y": 136 - }, - "size": { - "width": 120, - "height": 32 - } - }, - { - "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", - "type": "basic.info", - "data": { - "info": "Input data", - "readonly": true - }, - "position": { - "x": 224, - "y": 280 - }, - "size": { - "width": 112, - "height": 40 - } - }, - { - "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 840, - "y": 200 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", - "type": "basic.info", - "data": { - "info": "# D Flip-Flop \n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", - "readonly": true - }, - "position": { - "x": 144, - "y": -136 - }, - "size": { - "width": 488, - "height": 104 - } - } - ], - "wires": [ - { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" - } - }, - { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" - }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" - } - }, - { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" - } - }, - { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" - }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" - } - } - ] - } - } - }, - "3676a00f3a70e406487ed14b901daf3e4984e63d": { - "package": { - "name": "NOT", - "version": "2.0", - "description": "NOT gate (Verilog implementation)", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", - "data": { - "name": "" - }, - "position": { - "x": 112, - "y": 72 - } - }, - { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 560, - "y": 72 - } - }, - { - "id": "5365ed8c-e5db-4445-938f-8d689830ea5c", - "type": "basic.code", - "data": { - "code": "//-- NOT Gate\nassign q = ~a;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - } - ], - "out": [ - { - "name": "q" - } - ] - } - }, - "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 256, - "height": 104 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", + "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", + "type": "basic.info", "data": { "info": "Input", "readonly": true @@ -1346,44 +1601,283 @@ } } }, - "0b641dd31ecc9ec9194efd886de27cadd758656b": { + "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284": { "package": { - "name": "Button", - "version": "0.4", - "description": "Configurable button (pull-up on/off. Not on/off)", + "name": "sys-DFF-verilog", + "version": "3", + "description": "System - D Flip-flop. Capture data every system clock cycle. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", - "otid": 1615538095529 + "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "id": "54dbabeb-8aef-4184-8fdc-87528aca29a3", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 816, + "y": 112 + } + }, + { + "id": "3943e194-090b-4553-9df3-88bc4b17abc2", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 128, - "y": 232 + "x": 208, + "y": 184 } }, { - "id": "c2136078-81d0-4137-8583-c122b93cbdb0", - "type": "basic.inputLabel", + "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "name": "" + }, + "position": { + "x": 816, + "y": 232 + } + }, + { + "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": 208, + "y": 280 + } + }, + { + "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 512, + "y": 64 + } + }, + { + "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "type": "basic.code", + "data": { + "code": "//-- Initial value\nreg qi = INI;\n\n//-- Capture the input data \n//-- on the rising edge of \n//-- the system clock\nalways @(posedge clk)\n qi <= d;\n \n//-- Connect the register with the\n//-- output\nassign q = qi;", + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 384, + "y": 168 + }, + "size": { + "width": 352, + "height": 192 + } + }, + { + "id": "53d11290-50b3-40fb-b253-222cb296b075", + "type": "basic.info", + "data": { + "info": "Parameter: Initial value", + "readonly": true + }, + "position": { + "x": 488, + "y": 32 + }, + "size": { + "width": 208, + "height": 40 + } + }, + { + "id": "c25a29cd-d5ed-435e-b375-e6d5557660d8", + "type": "basic.info", + "data": { + "info": "System clock", + "readonly": true + }, + "position": { + "x": 208, + "y": 160 + }, + "size": { + "width": 120, + "height": 32 + } + }, + { + "id": "ecafc6fa-330b-4ba7-aa67-40b3ea48f1f1", + "type": "basic.info", + "data": { + "info": "Input data", + "readonly": true + }, + "position": { + "x": 224, + "y": 256 + }, + "size": { + "width": 112, + "height": 40 + } + }, + { + "id": "df95c331-682d-4733-a62d-ad9fcd75f96a", + "type": "basic.info", + "data": { + "info": "Output", + "readonly": true + }, + "position": { + "x": 840, + "y": 200 + }, + "size": { + "width": 80, + "height": 40 + } + }, + { + "id": "dd8217df-b56d-49a9-ae94-f5e0c96e1460", + "type": "basic.info", + "data": { + "info": "# D Flip-Flop (system)\n\nIt stores the input data that arrives at cycle n \nIts output is shown in the cycle n+1", + "readonly": true + }, + "position": { + "x": 144, + "y": -136 + }, + "size": { + "width": 488, + "height": 104 + } + }, + { + "id": "92bfbcf5-6016-4ad8-963c-c5c7747304d0", + "type": "basic.info", + "data": { + "info": "Not connected", + "readonly": true + }, + "position": { + "x": 808, + "y": 88 + }, + "size": { + "width": 176, + "height": 32 + } + } + ], + "wires": [ + { + "source": { + "block": "3943e194-090b-4553-9df3-88bc4b17abc2", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "clk" + } + }, + { + "source": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "q" + }, + "target": { + "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", + "port": "in" + } + }, + { + "source": { + "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", + "port": "constant-out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "INI" + } + }, + { + "source": { + "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", + "port": "out" + }, + "target": { + "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", + "port": "d" + } + } + ] + } + } + }, + "091b3514573becaa7196cc3f7854140e5773864d": { + "package": { + "name": "Button", + "version": "0.5", + "description": "Configurable button (pull-up on/off. Not on/off)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20xmlns:xlink=%22http://www.w3.org/1999/xlink%22%20width=%22202.458%22%20height=%22255.947%22%20viewBox=%220%200%2053.566957%2067.719398%22%3E%3Cdefs%3E%3ClinearGradient%20gradientTransform=%22matrix(-.013%20-.01966%20.01932%20-.01493%20151.654%20290.082)%22%20gradientUnits=%22userSpaceOnUse%22%20y2=%222300.215%22%20x2=%226069.057%22%20y1=%222538.05%22%20x1=%225466.681%22%20id=%22b%22%20xlink:href=%22#a%22/%3E%3ClinearGradient%20id=%22a%22%3E%3Cstop%20offset=%220%22%20stop-color=%22#c3875c%22/%3E%3Cstop%20offset=%22.48%22%20stop-color=%22#eccba3%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22#fce0cb%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20transform=%22translate(138.022%20-134.888)%22%3E%3Cpath%20d=%22M-117.19%20184.278a20.69%209.094%200%200%200-13.734%202.307l-5.434.006-1.284%205.482a20.69%209.094%200%200%200-.238%201.3%2020.69%209.094%200%200%200%2020.69%209.093%2020.69%209.094%200%200%200%2020.69-9.094%2020.69%209.094%200%200%200-.029-.351h.064l-1.277-6.47-5.778.005a20.69%209.094%200%200%200-13.67-2.278z%22%20fill=%22#333%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20ry=%226.762%22%20rx=%2219.408%22%20cy=%22187.341%22%20cx=%22-117.074%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%22.282%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(.1018%200%200%20.10181%20-158.528%20145.536)%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222.772%22%3E%3Cellipse%20cx=%22406.087%22%20cy=%22399.216%22%20rx=%22184.221%22%20ry=%2272.858%22%20fill=%22green%22/%3E%3Cellipse%20cx=%22406.23%22%20cy=%22383.328%22%20rx=%22179.497%22%20ry=%2260.977%22%20fill=%22#0f0%22/%3E%3C/g%3E%3C/g%3E%3Cpath%20d=%22M126.16%20115.387c-1.523%201.514-2.14%203.307-2.023%205.326-.507%201.097-2.411%202.346-2.027%203.267-1.196%201.923-1.624%203.389-1.572%204.569-.544%201.24-.403%201.705-.348%202.268-2.266%203.497-4.092%208.255-5.878%2013.125-2.302%202.765-3.64%205.792-4.898%208.84-2.191%203.7-3.756%207.67-4.02%2011.394l-.265.558c2.996%203.107%204.946%201.524%207.018.747%206.637-3.112%209.504-8.52%2012.212-14.025.473-1.572%201.57-3.127%203.151-4.669%204.414-4.785%206.886-10.022%209.857-15.142.228-.428.58-1.032%201.143-1.941%201.675-1.795%203.418-4.997%205.132-7.612z%22%20fill=%22url(#b)%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22%20transform=%22translate(-90.276%20-115.233)%22/%3E%3Cpath%20d=%22M18.486%2038.911c-2.362%202.823-3.506%206.298-4.228%2010.204.518.13%201.302-.444%202.155-1.196%202.575-6.067%201.848-7.142%202.073-9.008z%22%20fill=%22#f8ecf8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3Cpath%20d=%22M33.79%205.666c2.093-.057%203.853.53%205.373%201.582M31.832%208.759c2.001.286%203.946.663%205.428%201.788M30.331%2013.16c1.325-.48%203.02.099%204.83%201.005M29.98%2015.593l1.79.362%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%22.265%22/%3E%3C/svg%3E", + "otid": 1615538095529 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "59f7bee9-9832-421d-aa0a-de177f3f121d", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 128, + "y": 232 + } + }, + { + "id": "c2136078-81d0-4137-8583-c122b93cbdb0", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, "position": { "x": 280, @@ -1412,8 +1906,8 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": 880, - "y": 368 + "x": 888, + "y": 384 } }, { @@ -1424,7 +1918,7 @@ }, "position": { "x": 1200, - "y": 440 + "y": 456 } }, { @@ -1461,8 +1955,8 @@ "local": false }, "position": { - "x": 760, - "y": 352 + "x": 768, + "y": 368 } }, { @@ -1517,8 +2011,8 @@ "readonly": true }, "position": { - "x": 752, - "y": 536 + "x": 760, + "y": 560 }, "size": { "width": 192, @@ -1533,8 +2027,8 @@ "readonly": true }, "position": { - "x": 1008, - "y": 528 + "x": 1016, + "y": 544 }, "size": { "width": 168, @@ -1542,11 +2036,11 @@ } }, { - "id": "2de6000f-b5a2-4589-8fb3-d04179982959", - "type": "f718a5d8b0501d5cbb96b48c918db07a415187be", + "id": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", + "type": "68f4069229b120ada15cf7106fca630bde40ff7e", "position": { - "x": 1024, - "y": 440 + "x": 768, + "y": 472 }, "size": { "width": 96, @@ -1554,10 +2048,10 @@ } }, { - "id": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", - "type": "dc93d663ad1f02da00a0889f408a1f59b739c755", + "id": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", + "type": "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6", "position": { - "x": 600, + "x": 1032, "y": 456 }, "size": { @@ -1566,10 +2060,10 @@ } }, { - "id": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", - "type": "ad96dc706d08e8529f19944fe45991970dda6d11", + "id": "8d23de75-ac27-4a3b-911c-6a237f0dc702", + "type": "0705a6a13435ea79daf5779a2a0f076bd71f0a14", "position": { - "x": 760, + "x": 600, "y": 456 }, "size": { @@ -1596,7 +2090,7 @@ "port": "outlabel" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "39873fa0-c3f5-47ef-b54b-b6b344416b25" } }, @@ -1606,7 +2100,7 @@ "port": "outlabel" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a" } }, @@ -1616,18 +2110,18 @@ "port": "a139fa0d-9b45-4480-a251-f4a66b49aa23" }, "target": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8" }, "vertices": [] }, { "source": { - "block": "5d3c00c9-ff7a-4456-a343-5ccb65c7f078", + "block": "8d23de75-ac27-4a3b-911c-6a237f0dc702", "port": "7bfc506f-7a54-40a1-8d33-e78a5409b972" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, "vertices": [] @@ -1638,18 +2132,18 @@ "port": "constant-out" }, "target": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a" }, "vertices": [] }, { "source": { - "block": "6d5cfeb2-55ca-470b-b450-1f1a93456f19", + "block": "dec4bfde-1bd9-47b4-9e19-768969a2abc4", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530" }, "vertices": [] @@ -1666,7 +2160,7 @@ }, { "source": { - "block": "2de6000f-b5a2-4589-8fb3-d04179982959", + "block": "7f8e8a9e-3757-4b55-baa0-cb8680c3a332", "port": "22ff3fa1-943b-4d1a-bd89-36e1c054d077" }, "target": { @@ -1851,889 +2345,969 @@ } } }, - "f718a5d8b0501d5cbb96b48c918db07a415187be": { + "68f4069229b120ada15cf7106fca630bde40ff7e": { "package": { - "name": "Debouncer-x01", - "version": "1.2.0", - "description": "Remove the rebound on a mechanical switch", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + "name": "not-wire-x01", + "version": "0.2", + "description": "Select positive or negative logic for the input (0=positive, 1=negative)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1607779171609 }, "design": { "graph": { "blocks": [ { - "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "", - "clock": true + "name": "" }, "position": { - "x": -376, - "y": -656 + "x": 824, + "y": 304 } }, { - "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "type": "basic.inputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "", + "clock": false }, "position": { - "x": -224, - "y": -656 + "x": 376, + "y": 320 } }, { - "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", - "type": "basic.output", + "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "type": "basic.constant", "data": { - "name": "" + "name": "not", + "value": "0", + "local": false }, "position": { - "x": 952, - "y": -600 + "x": 520, + "y": 160 } }, { - "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out" - }, + "id": "160f76e9-4d8d-424e-8689-bb890101823c", + "type": "3ba5d0ecbd8f55582a6307158732789df06cb74c", "position": { - "x": 816, - "y": -600 + "x": 520, + "y": 256 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", - "type": "basic.input", + "id": "019e81db-5707-409c-b159-b4cb29813cc4", + "type": "basic.info", "data": { - "name": "", - "clock": false + "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", + "readonly": true }, "position": { - "x": -376, - "y": -584 + "x": 632, + "y": 392 + }, + "size": { + "width": 336, + "height": 96 } }, { - "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "type": "basic.inputLabel", + "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "in", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", + "readonly": true }, "position": { - "x": -224, - "y": -584 + "x": 728, + "y": 8 + }, + "size": { + "width": 296, + "height": 144 } }, { - "id": "5d12a177-7618-4517-9067-3012f7cb42ce", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 552, - "y": -440 + "x": 672, + "y": 304 + }, + "size": { + "width": 96, + "height": 64 } + } + ], + "wires": [ + { + "source": { + "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", + "port": "constant-out" + }, + "target": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + }, + "vertices": [] }, { - "id": "2f1050dd-a720-4ede-890e-612ce370ba61", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "out", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "160f76e9-4d8d-424e-8689-bb890101823c", + "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" }, - "position": { - "x": 840, - "y": -352 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { - "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": 536, - "y": -352 + "target": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "97b51945-d716-4b6c-9db9-970d08541249" } }, { - "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, - "position": { - "x": 384, - "y": -288 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } - }, + } + ] + } + } + }, + "3ba5d0ecbd8f55582a6307158732789df06cb74c": { + "package": { + "name": "Constante-1bits", + "version": "0.0.1", + "description": "Valor genérico constante, de 1 bits. Su valor se introduce como parámetro. Por defecto vale 0", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Ctext%20style=%22line-height:125%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%20x=%22293.115%22%20y=%22648.344%22%20font-weight=%22400%22%20font-size=%22335.399%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22%20transform=%22translate(-316.929%20-415.913)%22%3E%3Ctspan%20x=%22293.115%22%20y=%22648.344%22%3Ek%3C/tspan%3E%3C/text%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "type": "basic.outputLabel", + "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 120, - "y": -232 + "x": 960, + "y": 248 } }, { - "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "type": "basic.outputLabel", + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", "data": { - "blockColor": "fuchsia", - "name": "in", - "oldBlockColor": "fuchsia" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 120, - "y": -160 + "x": 728, + "y": 128 } }, { - "id": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "type": "93adf61bc489d9a96a344d3f2600237e9e19c607", + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", + "data": { + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k" + } + ] + } + }, "position": { - "x": 704, - "y": -368 + "x": 672, + "y": 248 }, "size": { - "width": 96, - "height": 96 + "width": 208, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", - "type": "basic.info", - "data": { - "info": "Edge detector", - "readonly": true - }, - "position": { - "x": 248, - "y": -104 - }, - "size": { - "width": 128, - "height": 40 - } - }, - { - "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", - "type": "basic.info", - "data": { - "info": "Whenever there is a change in \nthe input, the counter is started", - "readonly": true - }, - "position": { - "x": 376, - "y": -120 + "source": { + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, - "size": { - "width": 288, - "height": 56 + "target": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { - "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", - "type": "basic.info", - "data": { - "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", - "readonly": true - }, - "position": { - "x": 720, - "y": -456 + "source": { + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, - "size": { - "width": 304, - "height": 72 + "target": { + "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "port": "in" } - }, + } + ] + } + } + }, + "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "package": { + "name": "XOR2", + "version": "1.0.2", + "description": "XOR gate: two bits input xor gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", - "type": "basic.info", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", - "readonly": true + "name": "" }, "position": { - "x": 432, - "y": -640 - }, - "size": { - "width": 360, - "height": 120 + "x": 120, + "y": 48 } }, { - "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", - "type": "basic.info", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", - "readonly": true + "name": "" }, "position": { - "x": -8, - "y": -648 - }, - "size": { - "width": 312, - "height": 128 + "x": 560, + "y": 72 } }, { - "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", - "type": "basic.info", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "info": "Stable output", - "readonly": true + "name": "" }, "position": { - "x": 880, - "y": -280 - }, - "size": { - "width": 136, - "height": 40 + "x": 120, + "y": 104 } }, { - "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", - "type": "basic.info", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "type": "basic.code", "data": { - "info": "Counter", - "readonly": true - }, - "position": { - "x": 536, - "y": -232 - }, - "size": { - "width": 96, - "height": 40 - } - }, - { - "id": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "type": "413e4acc2a97fd7f77adb67728d1ae7b4d24f155", - "position": { - "x": 520, - "y": -192 + "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", + "params": [], + "ports": { + "in": [ + { + "name": "a" + }, + { + "name": "b" + } + ], + "out": [ + { + "name": "c" + } + ] + } }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "af203e4e-327b-44bb-9195-e059b3b635c8", - "type": "3324889d602b184a4c2012938d6c0c3749a5c7e9", "position": { - "x": 248, - "y": -176 + "x": 256, + "y": 48 }, "size": { - "width": 96, - "height": 64 + "width": 272, + "height": 112 } } ], "wires": [ { "source": { - "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", "port": "out" }, "target": { - "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", - "port": "inlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" } }, { "source": { - "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", - "port": "outlabel" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "2708468d-1088-4570-be63-fb0d4799a941" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" } }, { "source": { - "block": "5d12a177-7618-4517-9067-3012f7cb42ce", - "port": "outlabel" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" } - }, + } + ] + } + } + }, + "dd36dc1269be1a36894b4c4dfd8b2bd2c9026fe6": { + "package": { + "name": "Debouncer-x01", + "version": "1.3.0", + "description": "Remove the rebound on a mechanical switch", + "author": "Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%22-252%20400.9%2090%2040%22%3E%3Cpath%20d=%22M-251.547%20436.672h22.802v-30.353h5.862v30.353h5.259v-30.353h3.447v30.353h2.984v-30.353h3.506v30.523h6.406V405.77h38.868%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%221.4%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M-232.57%20403.877l26.946%2032.391M-205.624%20403.877l-26.946%2032.391%22%20fill=%22none%22%20stroke=%22red%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", - "port": "outlabel" + "id": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "type": "basic.input", + "data": { + "name": "", + "clock": true }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "position": { + "x": -376, + "y": -656 } }, { - "source": { - "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", - "port": "out" + "id": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "type": "basic.inputLabel", + "data": { + "blockColor": "yellow", + "name": "clk" }, - "target": { - "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", - "port": "inlabel" + "position": { + "x": -224, + "y": -656 } }, { - "source": { - "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", - "port": "outlabel" + "id": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "type": "basic.output", + "data": { + "name": "" }, - "target": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + "position": { + "x": 952, + "y": -600 } }, { - "source": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "id": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out" }, - "target": { - "block": "2f1050dd-a720-4ede-890e-612ce370ba61", - "port": "inlabel" + "position": { + "x": 816, + "y": -600 } }, { - "source": { - "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", - "port": "outlabel" - }, - "target": { - "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", - "port": "in" + "id": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "type": "basic.input", + "data": { + "name": "", + "clock": false + }, + "position": { + "x": -376, + "y": -584 } }, { - "source": { - "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", - "port": "outlabel" + "id": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "in" }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "position": { + "x": -224, + "y": -584 } }, { - "source": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" - }, - "target": { - "block": "3c0a5e86-2068-4aef-8ad9-34d39461ddfe", - "port": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7" + "id": "5d12a177-7618-4517-9067-3012f7cb42ce", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, - "vertices": [] + "position": { + "x": 552, + "y": -440 + } }, { - "source": { - "block": "af203e4e-327b-44bb-9195-e059b3b635c8", - "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + "id": "2f1050dd-a720-4ede-890e-612ce370ba61", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "out", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "97af60c6-97c3-4926-8aa7-784cf46fc642", - "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" + "position": { + "x": 840, + "y": -352 } - } - ] - } - } - }, - "93adf61bc489d9a96a344d3f2600237e9e19c607": { - "package": { - "name": "Reg-1bit", - "version": "0.1", - "description": "1bit register (implemented in verilog)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "3943e194-090b-4553-9df3-88bc4b17abc2", - "type": "basic.input", + "id": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": 104 + "x": 536, + "y": -352 } }, { - "id": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "type": "basic.input", + "id": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "type": "basic.outputLabel", "data": { - "name": "d", - "clock": false + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 216, - "y": 192 + "x": 384, + "y": -288 } }, { - "id": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "type": "basic.output", + "id": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "type": "basic.outputLabel", "data": { - "name": "" + "blockColor": "yellow", + "name": "clk", + "oldBlockColor": "fuchsia" }, "position": { - "x": 728, - "y": 192 + "x": 112, + "y": -248 } }, { - "id": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "type": "basic.input", + "id": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "type": "basic.outputLabel", "data": { - "name": "load", - "clock": false + "blockColor": "fuchsia", + "name": "in", + "oldBlockColor": "fuchsia" }, "position": { - "x": 240, - "y": 320 + "x": 112, + "y": -176 } }, { - "id": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "type": "basic.constant", + "id": "1be0ed57-ae41-4ca5-a8c0-3d70585336a6", + "type": "basic.info", "data": { - "name": "", - "value": "0", - "local": false + "info": "Edge detector", + "readonly": true }, "position": { - "x": 472, - "y": 56 + "x": 240, + "y": -120 + }, + "size": { + "width": 128, + "height": 40 } }, { - "id": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "type": "basic.code", + "id": "cabf3c3d-a707-4e06-be9a-4a66817c7a26", + "type": "basic.info", "data": { - "code": "reg q = INI;\n\nalways @(posedge clk)\n if (load)\n q <= d;", - "params": [ - { - "name": "INI" - } - ], - "ports": { - "in": [ - { - "name": "clk" - }, - { - "name": "d" - }, - { - "name": "load" - } - ], - "out": [ - { - "name": "q" - } - ] - } + "info": "Whenever there is a change in \nthe input, the counter is started", + "readonly": true }, "position": { - "x": 384, - "y": 168 + "x": 368, + "y": -88 }, "size": { - "width": 272, - "height": 104 + "width": 288, + "height": 56 } }, { - "id": "3df131d9-1f78-4d88-bd06-bcbe95855d01", + "id": "6dcd32b7-40bd-433d-a1e2-222636c19f2f", "type": "basic.info", "data": { - "info": "Initial value", + "info": "If the counter reaches it maximum \nvalue, the input is considered stable \nand it is captured", "readonly": true }, "position": { - "x": 480, - "y": 48 + "x": 720, + "y": -456 }, "size": { - "width": 136, - "height": 32 + "width": 304, + "height": 72 } - } - ], - "wires": [ + }, { - "source": { - "block": "3943e194-090b-4553-9df3-88bc4b17abc2", - "port": "out" + "id": "5ee60a84-8e65-49de-9b87-5afd9770b5a3", + "type": "basic.info", + "data": { + "info": "### Time calculation\n\nFor CLK=12MHZ, a 16-bit counter reaches its \nmaximum every 2 ** 16 * 1/F = 5.5ms aprox \nIF more time is needed for debouncing, \nuse a counter with more bits (17, 18...)", + "readonly": true }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "clk" + "position": { + "x": 432, + "y": -640 + }, + "size": { + "width": 360, + "height": 120 } }, { - "source": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "q" + "id": "f998abd9-dfc8-42d4-8816-c89f07a61e6f", + "type": "basic.info", + "data": { + "info": "## Debouncer \n\nA value is considered stable when \nthere is no changes during 5.5ms \naprox. When a value is stable it is \ncaptured on the output flip-flop", + "readonly": true }, - "target": { - "block": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78", - "port": "in" + "position": { + "x": -8, + "y": -648 + }, + "size": { + "width": 312, + "height": 128 } }, { - "source": { - "block": "65194b18-5d2a-41b2-bd86-01be99978ad6", - "port": "constant-out" + "id": "ababfa12-265a-4c7c-a482-8ed44cf9171c", + "type": "basic.info", + "data": { + "info": "Stable output", + "readonly": true }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "INI" + "position": { + "x": 880, + "y": -280 + }, + "size": { + "width": 136, + "height": 40 } }, { - "source": { - "block": "bf2f0c53-2d04-4cba-aa70-2df85502d24f", - "port": "out" + "id": "656df089-b248-432e-b6b5-ecd4bb5cc8eb", + "type": "basic.info", + "data": { + "info": "Counter", + "readonly": true }, - "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "d" + "position": { + "x": 536, + "y": -232 + }, + "size": { + "width": 96, + "height": 40 } }, { - "source": { - "block": "4e3677f4-ae08-4a6f-80a7-ec71cd0c24b7", - "port": "out" - }, + "id": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "type": "1ed41a9f9beacd7b446f07558a35d3b77dc87319", + "position": { + "x": 240, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "626e9279-30e7-4e81-8427-1f969a1f7789", + "type": "8a23ffd0491010ff595493182b82c722bd6902d7", + "position": { + "x": 704, + "y": -368 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "type": "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307", + "position": { + "x": 520, + "y": -192 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ + { + "source": { + "block": "4bf41c17-a2da-4140-95f7-2a80d51b1e1a", + "port": "out" + }, "target": { - "block": "bdc170f0-4468-4137-bd79-4624c9cadf2b", - "port": "load" + "block": "a0474543-ff59-4f6f-8d2e-3993d79c13de", + "port": "inlabel" + } + }, + { + "source": { + "block": "d8572528-e0db-413c-a4ff-64d8cfee021d", + "port": "outlabel" + }, + "target": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "2708468d-1088-4570-be63-fb0d4799a941" + } + }, + { + "source": { + "block": "5d12a177-7618-4517-9067-3012f7cb42ce", + "port": "outlabel" + }, + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" + } + }, + { + "source": { + "block": "c1243e04-edbf-4cc6-9d85-f7bf35ac1dae", + "port": "outlabel" + }, + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + } + }, + { + "source": { + "block": "c9e1af2a-6f09-4cf6-a5b3-fdf7ec2c6530", + "port": "out" + }, + "target": { + "block": "b0e427bd-ce26-43b5-9d61-685f1c1ab922", + "port": "inlabel" + } + }, + { + "source": { + "block": "ba86528a-72e9-40f7-a1e6-c2e684026c24", + "port": "outlabel" + }, + "target": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff" + } + }, + { + "source": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "2f1050dd-a720-4ede-890e-612ce370ba61", + "port": "inlabel" + } + }, + { + "source": { + "block": "20d06e62-fd81-4956-b93c-ade0e616fb98", + "port": "outlabel" + }, + "target": { + "block": "22ff3fa1-943b-4d1a-bd89-36e1c054d077", + "port": "in" + } + }, + { + "source": { + "block": "761cc74e-6d08-4b08-acf3-70197fd7076a", + "port": "outlabel" + }, + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "88e0e872-0460-4ecc-bf26-8a7a5598a024" + }, + "target": { + "block": "626e9279-30e7-4e81-8427-1f969a1f7789", + "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" + }, + "vertices": [] + }, + { + "source": { + "block": "a409a5ab-68e2-4e36-b698-f6c309afdd54", + "port": "1c25e08e-e664-4fab-9b30-cedc1f8a3739" + }, + "target": { + "block": "3bc0627a-8d4d-4e19-a4aa-83b0dbfa525a", + "port": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06" } } ] } } }, - "413e4acc2a97fd7f77adb67728d1ae7b4d24f155": { + "1ed41a9f9beacd7b446f07558a35d3b77dc87319": { "package": { - "name": "syscounter-rst-16bits", - "version": "0.1", - "description": "16-bits Syscounter with reset", + "name": "Edges-detector-block", + "version": "0.3", + "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input. Block implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618592156430 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "913b2fb3-8676-42d8-bd97-97880350317d", + "type": "basic.output", + "data": { + "name": "nc" + }, + "position": { + "x": 624, + "y": 120 + } + }, + { + "id": "2708468d-1088-4570-be63-fb0d4799a941", "type": "basic.input", "data": { "name": "", "clock": true }, "position": { - "x": 216, - "y": -120 + "x": 88, + "y": 152 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "", + "clock": false }, "position": { - "x": 368, - "y": -120 + "x": 88, + "y": 280 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", + "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 384, - "y": -32 + "x": 616, + "y": 352 } }, { - "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", - "type": "basic.outputLabel", + "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "blockColor": "fuchsia", - "size": 16 + "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", + "readonly": true }, "position": { - "x": 1040, - "y": -32 + "x": 104, + "y": -40 + }, + "size": { + "width": 648, + "height": 96 } }, { - "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "type": "basic.output", + "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "size": 16 + "info": "Input signal", + "readonly": true }, "position": { - "x": 1216, - "y": -32 + "x": 96, + "y": 256 + }, + "size": { + "width": 136, + "height": 40 } }, { - "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", - "type": "basic.output", + "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", + "type": "basic.info", "data": { - "name": "max" + "info": "System clock", + "readonly": true }, "position": { - "x": 1208, - "y": 56 + "x": 104, + "y": 120 + }, + "size": { + "width": 96, + "height": 48 } }, { - "id": "06c393de-8af4-4b53-852c-b0e0160b5314", - "type": "basic.outputLabel", + "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", + "type": "basic.info", "data": { - "blockColor": "fuchsia", - "name": "c" + "info": "Current signal \nstate", + "readonly": true }, "position": { - "x": 1048, - "y": 56 + "x": 160, + "y": 352 + }, + "size": { + "width": 168, + "height": 48 } }, { - "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "type": "basic.input", + "id": "ab801839-c115-4e44-adb7-349586890b97", + "type": "basic.info", "data": { - "name": "rst", - "clock": false + "info": "Signal state in the previous \nclock cycle", + "readonly": true }, "position": { - "x": 216, - "y": 56 + "x": 328, + "y": 200 + }, + "size": { + "width": 248, + "height": 48 } }, { - "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "type": "basic.inputLabel", + "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", + "type": "basic.info", "data": { - "name": "q", - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "", - "value": "" - }, - { - "index": "14", - "name": "", - "value": "" - }, - { - "index": "13", - "name": "", - "value": "" - }, - { - "index": "12", - "name": "", - "value": "" - }, - { - "index": "11", - "name": "", - "value": "" - }, - { - "index": "10", - "name": "", - "value": "" - }, - { - "index": "9", - "name": "", - "value": "" - }, - { - "index": "8", - "name": "", - "value": "" - }, - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", + "readonly": true }, "position": { - "x": 704, - "y": 56 + "x": 504, + "y": 264 + }, + "size": { + "width": 400, + "height": 72 } }, { - "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "c", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, + "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": 856, - "y": 144 + "x": 480, + "y": 352 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "type": "bc711b66856fc03718ca2669a0c67f34806c8a9d", + "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", + "type": "basic.info", + "data": { + "info": "In any other case the output is 0", + "readonly": true + }, "position": { - "x": 544, - "y": 40 + "x": 520, + "y": 432 }, "size": { - "width": 96, - "height": 96 + "width": 296, + "height": 40 } }, { - "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", + "id": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "type": "58ed2b5c7e33e2f215ccba6c101d9ea4ff60f284", "position": { - "x": 720, - "y": 160 + "x": 320, + "y": 264 }, "size": { "width": 96, @@ -2744,243 +3318,276 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", "port": "out" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", - "port": "inlabel" - }, - "vertices": [] + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + } }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "2708468d-1088-4570-be63-fb0d4799a941", + "port": "out" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "3943e194-090b-4553-9df3-88bc4b17abc2" } }, { "source": { - "block": "06c393de-8af4-4b53-852c-b0e0160b5314", - "port": "outlabel" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", "port": "in" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "size": 16 - }, - "target": { - "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", - "port": "inlabel" - }, - "size": 16 - }, - { - "source": { - "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", - "port": "outlabel" - }, - "target": { - "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", - "port": "in", - "size": 16 - }, - "size": 16 - }, - { - "source": { - "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", - "port": "out" + "block": "932daa85-b751-4060-a7fa-d517b2c7eaa7", + "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "710d9d0b-6550-4778-b5b4-c13ff8974876" - }, - "target": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" - }, - "vertices": [], - "size": 16 - }, - { - "source": { - "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", - "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" + "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "port": "out" }, "target": { - "block": "a7bb7b85-1388-4ddb-a3ad-5d207c2c1f96", - "port": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170" + "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, "vertices": [ { - "x": 840, - "y": 264 + "x": 264, + "y": 368 } - ], - "size": 16 + ] } ] } } }, - "bc711b66856fc03718ca2669a0c67f34806c8a9d": { + "8a23ffd0491010ff595493182b82c722bd6902d7": { "package": { - "name": "DFF-rst-x16", - "version": "0.1", - "description": "DFF-rst-x16: 16 D flip-flops in paralell with reset", + "name": "DFF-verilog", + "version": "0.2", + "description": "DFF. D Flip-flop. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1594812046378 }, "design": { "graph": { "blocks": [ { - "id": "05abbe4c-682c-4e96-9360-fa14c9626570", - "type": "basic.outputLabel", + "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "type": "basic.input", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "", + "clock": true }, "position": { - "x": -136, - "y": -448 + "x": 128, + "y": 424 } }, { - "id": "81f40927-8dde-4218-9855-3b92f1892e56", - "type": "basic.outputLabel", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "type": "basic.input", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "d", + "clock": false }, "position": { - "x": -136, - "y": -376 + "x": 128, + "y": 536 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 824, + "y": 536 + } + }, + { + "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", "type": "basic.input", + "data": { + "name": "load", + "clock": false + }, + "position": { + "x": 128, + "y": 648 + } + }, + { + "id": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "type": "basic.constant", "data": { "name": "", - "clock": true + "value": "0", + "local": false }, "position": { - "x": -632, - "y": -264 + "x": 488, + "y": 280 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "type": "basic.code", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + }, + { + "name": "load" + } + ], + "out": [ + { + "name": "q" + } + ] + }, + "params": [ { - "index": "0", - "name": "", - "value": "" + "name": "INI" } ], - "virtual": true + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- When load is active\n //-- the input data is captured\n if (load == 1'b1)\n qi <= d;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": -480, - "y": -264 + "x": 320, + "y": 400 + }, + "size": { + "width": 424, + "height": 336 + } + } + ], + "wires": [ + { + "source": { + "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", + "port": "out" + }, + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "clk" } }, { - "id": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, - "position": { - "x": -112, - "y": -216 + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "d" } }, { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", + "source": { + "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", + "port": "out" + }, + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "load" + } + }, + { + "source": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "q" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } + }, + { + "source": { + "block": "be33796a-a109-4ab0-a53b-dd6ec67587cd", + "port": "constant-out" + }, + "target": { + "block": "5bffd6ef-bb9d-4d3f-a4f0-f91c6040ddc5", + "port": "INI" + } + } + ] + } + } + }, + "e8e3e62a1e1b5f4e98c7e128c7cd1bdf59b8f307": { + "package": { + "name": "syscounter-rst-16bits", + "version": "0.2", + "description": "16-bits Syscounter with reset", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22302.843%22%20height=%22186.504%22%20viewBox=%220%200%2080.127205%2049.345746%22%3E%3Cdefs%3E%3Cmarker%20id=%22a%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.5332%22/%3E%3C/marker%3E%3C/defs%3E%3Cg%20transform=%22translate(-65.585%20-4.54)%22%3E%3Cpath%20d=%22M138.803%2048.49V16.91%22%20fill=%22#00f%22%20stroke=%22#00f%22%20stroke-width=%222.806%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20marker-end=%22url(#a)%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2299.747%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%22108.575%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%22108.575%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M100.868%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3Crect%20rx=%222.807%22%20ry=%222.807%22%20y=%225.289%22%20x=%2266.333%22%20height=%2247.849%22%20width=%2229.538%22%20fill=%22#666%22%20stroke=%22#000%22%20stroke-width=%221.497%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20transform=%22scale(.94516%201.05802)%22%20y=%2240.921%22%20x=%2273.223%22%20style=%22line-height:0%25%22%20font-weight=%22400%22%20font-size=%228.982%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%221.497%22%3E%3Ctspan%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20y=%2240.921%22%20x=%2273.223%22%20font-weight=%22700%22%20font-size=%2235.656%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M67.454%2030.283h27.764%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%222.245%22%20stroke-linecap=%22square%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618592156430 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { - "name": "rst", - "clock": false + "name": "", + "clock": true }, "position": { - "x": -624, - "y": -192 + "x": 216, + "y": -120 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", + "id": "0a772657-8018-424d-8f04-75d3ffff3692", "type": "basic.inputLabel", "data": { - "blockColor": "navy", - "name": "rst", + "blockColor": "yellow", + "name": "clk", "pins": [ { "index": "0", - "name": "NULL", - "value": "NULL" + "name": "", + "value": "" } ], "virtual": true }, "position": { - "x": -480, - "y": -192 - } - }, - { - "id": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -112, - "y": -144 + "x": 368, + "y": -120 } }, { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "type": "basic.outputLabel", "data": { "blockColor": "yellow", @@ -2988,142 +3595,206 @@ "oldBlockColor": "fuchsia" }, "position": { - "x": -112, - "y": -8 + "x": 384, + "y": -32 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", + "id": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "type": "basic.outputLabel", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "q", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": -128, - "y": 72 + "x": 1040, + "y": -32 } }, { - "id": "710d9d0b-6550-4778-b5b4-c13ff8974876", + "id": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", "type": "basic.output", "data": { - "name": "", + "name": "q", "range": "[15:0]", "size": 16 }, "position": { - "x": 568, - "y": 104 + "x": 1216, + "y": -32 } }, { - "id": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", - "type": "basic.input", + "id": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "max" }, "position": { - "x": -576, - "y": 136 + "x": 1208, + "y": 56 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "id": "06c393de-8af4-4b53-852c-b0e0160b5314", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "blockColor": "fuchsia", + "name": "c" }, "position": { - "x": -128, - "y": 248 + "x": 1048, + "y": 56 } }, { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", + "id": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", + "type": "basic.input", "data": { - "blockColor": "navy", "name": "rst", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": -128, - "y": 312 - } - }, - { - "id": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 48, - "y": 352 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "03291097-00e3-48db-9044-3c73ed88eeb8", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", - "position": { - "x": 40, - "y": 104 + "clock": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "type": "852bc8c84d29887beb3432bd25e5e7b6419b7f06", "position": { - "x": -400, - "y": 104 - }, - "size": { - "width": 96, - "height": 128 + "x": 216, + "y": 56 } }, { - "id": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "type": "401a2859b9822a66cc19b8c5277d4c310a836edd", - "position": { - "x": 384, - "y": 72 - }, - "size": { - "width": 96, - "height": 128 - } - }, + "id": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "type": "basic.inputLabel", + "data": { + "name": "q", + "range": "[15:0]", + "pins": [ + { + "index": "15", + "name": "", + "value": "" + }, + { + "index": "14", + "name": "", + "value": "" + }, + { + "index": "13", + "name": "", + "value": "" + }, + { + "index": "12", + "name": "", + "value": "" + }, + { + "index": "11", + "name": "", + "value": "" + }, + { + "index": "10", + "name": "", + "value": "" + }, + { + "index": "9", + "name": "", + "value": "" + }, + { + "index": "8", + "name": "", + "value": "" + }, + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" + }, + "position": { + "x": 712, + "y": 88 + } + }, + { + "id": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "c", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 856, + "y": 144 + } + }, { - "id": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "type": "8ecd5933e4bd5916eca00d6b654d6760012c47a6", "position": { - "x": 48, - "y": -152 + "x": 720, + "y": 160 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "type": "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d", + "id": "de292739-9119-4a80-832d-033be6a9ffbe", + "type": "0788ea6614e4f073f6ed9a49665243d6d489ba46", "position": { - "x": 64, - "y": -360 + "x": 544, + "y": 40 }, "size": { "width": 96, @@ -3145,996 +3816,1096 @@ }, { "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", + "block": "cd9b7fce-c943-4b4c-a716-94f2cd21ccda", "port": "inlabel" - } - }, - { - "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } - }, - { - "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": 0, - "y": 112 - } - ] - }, - { - "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" }, - "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - }, - "vertices": [ - { - "x": -8, - "y": 376 - } - ] + "vertices": [] }, { "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "0ae5a502-ee21-47ad-bacb-405a35a87a91" } }, { "source": { - "block": "cf0ec9b2-9d62-4940-aa5c-aeb5598d4206", + "block": "06c393de-8af4-4b53-852c-b0e0160b5314", "port": "outlabel" }, "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" + "block": "88e0e872-0460-4ecc-bf26-8a7a5598a024", + "port": "in" } }, { "source": { - "block": "95c3db7f-827e-4950-8a74-ed4c855b1e80", - "port": "outlabel" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "size": 16 }, "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" - } - }, - { - "source": { - "block": "05abbe4c-682c-4e96-9360-fa14c9626570", - "port": "outlabel" + "block": "b34779b6-0670-454d-8d35-9f92e6ff15cf", + "port": "inlabel" }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } + "size": 16 }, { "source": { - "block": "81f40927-8dde-4218-9855-3b92f1892e56", + "block": "217e7560-fd53-4db7-b08f-c9e027e3ba4e", "port": "outlabel" }, "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "159f86de-af0f-4f1a-9a93-7e8149d5d322" + "block": "9c188e62-dea5-47d2-bfb6-b8379f6c7637", + "port": "in", + "size": 16 }, - "vertices": [ - { - "x": 8, - "y": -328 - } - ] + "size": 16 }, { "source": { - "block": "ccf3fe71-4cdb-4e98-9ecd-d0083cfb1170", + "block": "2a921d76-1cbd-48fe-82a9-11b0ab4dbc06", "port": "out" }, "target": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "892d93f1-9c4c-46c1-82c7-ff9702a5725a" + } }, { "source": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "7995c7b0-4a39-4a19-aaa4-68f4e469912f" }, "target": { - "block": "710d9d0b-6550-4778-b5b4-c13ff8974876", - "port": "in" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "cc343d02-8e43-4dd6-9999-21e29934ed5b" }, + "vertices": [], "size": 16 }, { "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "df399ca5-160e-470b-90e2-3c3b488cda5e" + "block": "230ff023-e330-4c47-84fb-8366ab5fdbd4", + "port": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc" }, "target": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "block": "de292739-9119-4a80-832d-033be6a9ffbe", + "port": "c48a2779-52ed-4dde-8f95-e8ce67397de8" }, "vertices": [ { - "x": -272, - "y": 368 + "x": 840, + "y": 264 } ], - "size": 4 - }, + "size": 16 + } + ] + } + } + }, + "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { + "package": { + "name": "Inc1-16bits", + "version": "0.1", + "description": "Inc1-16bit: Increment a 16-bits number by one", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "b69090a8-121e-4bcb-8e4b-55faee72dc70" - }, - "target": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "size": 4 + "position": { + "x": 624, + "y": -168 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9" - }, - "target": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "vertices": [ - { - "x": -160, - "y": -16 - } - ], - "size": 4 + "position": { + "x": 280, + "y": -152 + } }, { - "source": { - "block": "3b9c2480-7e90-4a8f-90ad-2c5c08bcc5f1", - "port": "8bbb6d1c-9f19-4d90-937c-492fec692420" - }, - "target": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "26833303-0a1a-4750-8546-b98e2fdfdd82" + "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "vertices": [ - { - "x": -184, - "y": -184 - } - ], - "size": 4 + "position": { + "x": 624, + "y": -104 + } + }, + { + "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "type": "basic.constant", + "data": { + "name": "", + "value": "1", + "local": true + }, + "position": { + "x": 456, + "y": -256 + } }, + { + "id": "12fb4602-d67f-4129-a777-f04945adf29d", + "type": "26569688c377bf52132e5f1de5a15da7143d9388", + "position": { + "x": 456, + "y": -152 + }, + "size": { + "width": 96, + "height": 64 + } + } + ], + "wires": [ { "source": { - "block": "f071a293-16e9-4c8b-8494-14b7f15033a3", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "7f009181-43fb-4806-a540-c2049656ce40" - }, - "size": 4 + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } }, { "source": { - "block": "03291097-00e3-48db-9044-3c73ed88eeb8", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", + "port": "constant-out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "d250cf47-8011-489b-8ddf-cc19f9e3f937" - }, - "size": 4 + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + } }, { "source": { - "block": "d0c1a36f-1bb8-46af-a2f8-088defad2415", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", + "port": "out" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "b875d929-cdf0-4d61-bf25-af544dcb5ff8" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" }, - "vertices": [ - { - "x": 208, - "y": 24 - } - ], - "size": 4 + "size": 16 }, { "source": { - "block": "6b1c8363-ae57-4448-baa0-6e564446fbe0", - "port": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b" + "block": "12fb4602-d67f-4129-a777-f04945adf29d", + "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" }, "target": { - "block": "853ca8c5-b04e-4433-a26b-bf6bd662b674", - "port": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df" + "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", + "port": "in" }, - "vertices": [ - { - "x": 280, - "y": -128 - } - ], - "size": 4 + "size": 16 } ] } } }, - "5c75f6e4f841e85f7c34d83b9cc081ef669dd12d": { + "26569688c377bf52132e5f1de5a15da7143d9388": { "package": { - "name": "DFF-rst-x04", + "name": "AdderK-16bits", "version": "0.1", - "description": "DFF-rst-x04: Three D flip-flops in paralell with reset", + "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1618509859237 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "type": "basic.outputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "c" }, "position": { - "x": -160, - "y": -336 + "x": 624, + "y": -168 } }, { - "id": "35ac40b6-de26-493f-b22e-d15895042a60", - "type": "basic.outputLabel", + "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "type": "basic.output", "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "name": "s", + "range": "[15:0]", + "size": 16 }, "position": { - "x": -168, - "y": -280 + "x": 624, + "y": -96 } }, { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", "type": "basic.input", "data": { "name": "", - "clock": true + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": -496, - "y": -256 + "x": 232, + "y": -56 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "type": "basic.constant", "data": { - "blockColor": "yellow", - "name": "clk", - "pins": [ - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true + "name": "", + "value": "0", + "local": false }, "position": { - "x": -344, - "y": -256 + "x": 232, + "y": -272 } }, { - "id": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, + "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "type": "651fa32fcf52b534a766fdb2ba638a010338f268", "position": { - "x": 112, - "y": -200 - } - }, - { - "id": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "type": "basic.input", - "data": { - "name": "rst", - "clock": false + "x": 232, + "y": -168 }, - "position": { - "x": -488, - "y": -184 + "size": { + "width": 96, + "height": 64 } }, { - "id": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, + "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", "position": { - "x": -344, - "y": -184 - } - }, - { - "id": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "x": 456, + "y": -152 }, - "position": { - "x": 112, - "y": -112 + "size": { + "width": 96, + "height": 64 } - }, + } + ], + "wires": [ { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 376, - "y": -8 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "source": { + "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", + "port": "constant-out" }, - "position": { - "x": 376, - "y": 80 + "target": { + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" } }, { - "id": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "source": { + "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", + "port": "d54af040-d87a-431d-a15f-d5deb4795af5" }, - "position": { - "x": 1032, - "y": 184 - } + "target": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" + }, + "size": 16 }, { - "id": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "source": { + "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", + "port": "out" }, - "position": { - "x": 528, - "y": 208 - } + "target": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" + }, + "size": 16 }, { - "id": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "source": { + "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", + "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" }, - "position": { - "x": -336, - "y": 224 - } - }, - { - "id": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "rst", - "oldBlockColor": "fuchsia" + "target": { + "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", + "port": "in" }, - "position": { - "x": 520, - "y": 264 - } - }, + "size": 16 + } + ] + } + } + }, + "651fa32fcf52b534a766fdb2ba638a010338f268": { + "package": { + "name": "16-bits-gen-constant", + "version": "0.0.2", + "description": "Generic: 16-bits generic constant", + "author": "Juan Gonzalez-Gomez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ { - "id": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": 192 + "id": "d54af040-d87a-431d-a15f-d5deb4795af5", + "type": "basic.output", + "data": { + "name": "", + "range": "[15:0]", + "size": 16 }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 848, - "y": 152 - }, - "size": { - "width": 96, - "height": 128 + "x": 960, + "y": 248 } }, { - "id": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 672, - "y": 264 + "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": 520, - "y": 64 - }, - "size": { - "width": 96, - "height": 96 + "x": 728, + "y": 128 } }, { - "id": "ef954a48-69f2-4704-9719-698826029980", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", - "position": { - "x": 272, - "y": -128 + "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "type": "basic.code", + "data": { + "code": "assign k = VALUE;", + "params": [ + { + "name": "VALUE" + } + ], + "ports": { + "in": [], + "out": [ + { + "name": "k", + "range": "[15:0]", + "size": 16 + } + ] + } }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "type": "2be0f80ece8db75007def664695ef5f257f88b99", "position": { - "x": -16, - "y": -296 + "x": 672, + "y": 248 }, "size": { - "width": 96, - "height": 96 + "width": 208, + "height": 64 } } ], "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" + "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", + "port": "constant-out" }, "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "VALUE" } }, { "source": { - "block": "7f915e41-616b-42d0-b6b3-93e8312f9091", - "port": "outlabel" + "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", + "port": "k" }, "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" - } - }, - { - "source": { - "block": "159f86de-af0f-4f1a-9a93-7e8149d5d322", - "port": "out" + "block": "d54af040-d87a-431d-a15f-d5deb4795af5", + "port": "in" }, - "target": { - "block": "eae23d49-1710-4ffb-9162-8c4238e16af9", - "port": "inlabel" - } - }, + "size": 16 + } + ] + } + } + }, + "bc66d79524a86b172c0ff190e607bca7c0694b8b": { + "package": { + "name": "Adder-16bits", + "version": "0.1", + "description": "Adder-16bits: Adder of two operands of 16 bits", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "ff33bbea-7f70-4f0f-b74d-6bcb9f41d0ba", - "port": "outlabel" + "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "type": "basic.inputLabel", + "data": { + "name": "a1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -664 } }, { - "source": { - "block": "a47f4645-6751-4e16-8293-52d8f8cfc9f1", - "port": "outlabel" + "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "type": "basic.outputLabel", + "data": { + "name": "a1", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 352, + "y": -664 } }, { - "source": { - "block": "719d7e53-bdb2-40e8-8bed-c86a12749e88", - "port": "outlabel" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 960, + "y": -608 } }, { - "source": { - "block": "fdb3de4d-1a1f-420d-83f5-652d30cd8ca3", - "port": "outlabel" + "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "position": { + "x": -320, + "y": -608 } }, { - "source": { - "block": "7a94a774-819e-4796-ad92-2b9f0a06e828", - "port": "outlabel" + "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "type": "basic.inputLabel", + "data": { + "name": "a0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "e5f6cfba-f822-4d53-a924-926407bc4e3f" + "position": { + "x": 8, + "y": -592 } }, { - "source": { - "block": "35ac40b6-de26-493f-b22e-d15895042a60", - "port": "outlabel" + "id": "4743defe-36c0-40a2-aaf0-188272583034", + "type": "basic.outputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 352, + "y": -584 } }, { - "source": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "type": "basic.output", + "data": { + "name": "s", + "range": "[15:0]", + "size": 16 }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 960, + "y": -544 } }, { - "source": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "vertices": [ - { - "x": 712, - "y": 128 - } - ] + "position": { + "x": 8, + "y": -472 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[7:0]", + "blockColor": "deeppink", + "size": 8 }, - "target": { - "block": "795fee35-1b0d-4780-afe4-25451dc8b7b3", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 184, + "y": -472 } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0f69a2a7-39f9-4ed1-be11-0e7ee877a076", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "type": "basic.input", + "data": { + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, - "vertices": [ - { - "x": -48, - "y": 312 - } - ] + "position": { + "x": -320, + "y": -424 + } }, { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "type": "basic.inputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "pins": [ + { + "index": "7", + "name": "", + "value": "" + }, + { + "index": "6", + "name": "", + "value": "" + }, + { + "index": "5", + "name": "", + "value": "" + }, + { + "index": "4", + "name": "", + "value": "" + }, + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "target": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" + "position": { + "x": 8, + "y": -408 } }, { - "source": { - "block": "ef954a48-69f2-4704-9719-698826029980", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 768, - "y": 72 - } - ] - }, - { - "source": { - "block": "26833303-0a1a-4750-8546-b98e2fdfdd82", - "port": "out" - }, - "target": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "571d3fa4-680d-4422-92c6-b3b1dcd4fa8b", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "48335216-c02f-4e23-8a04-e3d4eaa032ab", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "0da42cdc-7d03-494b-acec-9b2095f8d663" - } - }, - { - "source": { - "block": "e76b0273-be54-4e06-ab90-45b1a08d31e4", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "ac2e4720-4af2-481e-9d20-d935321e31f2", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - } - ] - } - } - }, - "c4f23ad05c2010ec9bd213c8814c9238873037ae": { - "package": { - "name": "Bus4-Split-all", - "version": "0.1", - "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { - "graph": { - "blocks": [ - { - "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "type": "basic.output", - "data": { - "name": "3" + "id": "7114cf32-af2c-438f-b816-1043a8bd819d", + "type": "basic.outputLabel", + "data": { + "name": "b0", + "range": "[7:0]", + "blockColor": "fuchsia", + "size": 8 }, "position": { - "x": 576, - "y": 80 + "x": 184, + "y": -408 } }, { - "id": "33072210-9ba0-4659-8339-95952b939e6e", - "type": "basic.output", - "data": { - "name": "2" - }, + "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 600, - "y": 144 + "x": -168, + "y": -424 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "type": "basic.input", - "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 - }, + "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 128, - "y": 184 + "x": -168, + "y": -608 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "type": "basic.output", - "data": { - "name": "1" - }, + "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", "position": { - "x": 592, - "y": 240 + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "0f7487e5-b070-4277-bba6-acf69934afca", - "type": "basic.output", - "data": { - "name": "0" - }, + "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "type": "c3c498191b14e9288a85fa2871b3966665f75475", "position": { - "x": 568, - "y": 296 + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", - "data": { - "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o3" - }, - { - "name": "o2" - }, - { - "name": "o1" - }, - { - "name": "o0" - } - ] - } - }, + "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", "position": { - "x": 296, - "y": 176 + "x": 760, + "y": -544 }, "size": { - "width": 208, - "height": 80 + "width": 96, + "height": 64 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", - "port": "in" - } + "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "0f7487e5-b070-4277-bba6-acf69934afca", - "port": "in" - } + "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "size": 8 }, "target": { - "block": "33072210-9ba0-4659-8339-95952b939e6e", - "port": "in" - } + "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "size": 8 }, "target": { - "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", - "port": "in" - } + "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", + "port": "inlabel" + }, + "size": 8 }, { "source": { - "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", - "port": "out" + "block": "7114cf32-af2c-438f-b816-1043a8bd819d", + "port": "outlabel" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 4 - } - ] - } - } - }, - "84f0a15761ee8b753f67079819a7614923939472": { - "package": { - "name": "Bus4-Join-all", - "version": "0.1", - "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", - "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "type": "basic.input", - "data": { - "name": "3", - "clock": false + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "63477487-9493-4058-a7e1-9bab443ec466", + "size": 8 }, - "position": { - "x": 80, - "y": 64 - } + "size": 8 }, { - "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "type": "basic.input", - "data": { - "name": "2", - "clock": false + "source": { + "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", + "port": "outlabel" }, - "position": { - "x": 80, - "y": 136 + "target": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", + "port": "outlabel" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "4743defe-36c0-40a2-aaf0-188272583034", + "port": "outlabel" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "3867504b-f331-4e0e-b923-acc86cb4255c", + "size": 8 + }, + "size": 8 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "55180947-6349-4a04-a151-ad69ea2b155e", + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "port": "out" + }, + "target": { + "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", + "port": "out" + }, + "target": { + "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" + }, + "size": 16 + }, + { + "source": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + }, + "target": { + "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "port": "in" + }, + "size": 16 + }, + { + "source": { + "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" + }, + "size": 8 + }, + { + "source": { + "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", + "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" + }, + "target": { + "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", + "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" + }, + "size": 8 + } + ] + } + } + }, + "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "package": { + "name": "Bus16-Split-half", + "version": "0.1", + "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "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": { + "graph": { + "blocks": [ + { + "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", "type": "basic.output", "data": { - "name": "", - "range": "[3:0]", - "size": 4 + "name": "1", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 712, - "y": 200 + "x": 608, + "y": 176 } }, { - "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", "type": "basic.input", "data": { - "name": "1", - "clock": false + "name": "", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 80, + "x": 96, "y": 208 } }, { - "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "type": "basic.input", + "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "type": "basic.output", "data": { "name": "0", - "clock": false + "range": "[7:0]", + "size": 8 }, "position": { - "x": 80, + "x": 608, "y": 272 } }, @@ -4142,384 +4913,563 @@ "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", + "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", "params": [], "ports": { "in": [ { - "name": "i3" - }, - { - "name": "i2" - }, - { - "name": "i1" - }, - { - "name": "i0" + "name": "i", + "range": "[15:0]", + "size": 16 } ], "out": [ { - "name": "o", - "range": "[3:0]", - "size": 4 + "name": "o1", + "range": "[7:0]", + "size": 8 + }, + { + "name": "o0", + "range": "[7:0]", + "size": 8 } ] } }, "position": { - "x": 296, + "x": 272, "y": 176 }, "size": { - "width": 344, - "height": 104 + "width": 240, + "height": 120 } } ], "wires": [ { "source": { - "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", "port": "out" }, "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - } - }, - { - "source": { - "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", - "port": "out" + "port": "i" }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" - } + "size": 16 }, { "source": { - "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", - "port": "out" - }, - "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 200, - "y": 176 - } - ] - }, - { - "source": { - "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", - "port": "out" + "port": "o1" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" + "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", + "port": "in" }, - "vertices": [ - { - "x": 224, - "y": 128 - } - ] + "size": 8 }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" + "port": "o0" }, "target": { - "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", "port": "in" }, - "size": 4 + "size": 8 } ] } } }, - "2be0f80ece8db75007def664695ef5f257f88b99": { + "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { "package": { - "name": "DFF-rst-x01", - "version": "0.2", - "description": "DFF-rst-x01: D Flip flop with reset input. When rst=1, the DFF is 0", + "name": "Adder-8bits", + "version": "0.1", + "description": "Adder-8bits: Adder of two operands of 8 bits", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22196.313%22%20height=%22216.83%22%20viewBox=%220%200%2051.941051%2057.369679%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20transform=%22translate(-52.22%20-48.028)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2279.352%22%20y=%2253.67%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M77.902%2088.18l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M70.517%2080.116l-9.232-19.613-6.45%203.725-2.07-3.584%2020.905-12.07%202.07%203.584-6.093%203.518%2012.03%2018.222s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.773L69.412%2093.049s-2.848-3.696-2.16-6.796c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2281.296%22%20y=%2263.239%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", - "otid": 1617895961660 + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "type": "basic.input", + "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "type": "basic.inputLabel", "data": { - "name": "", - "clock": true - }, - "position": { - "x": 200, - "y": -264 - } - }, - { - "id": "4b0bae4c-c796-429c-ac44-785afc2f4c89", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", + "name": "a1", + "range": "[3:0]", "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, { "index": "0", "name": "", "value": "" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 352, - "y": -264 + "x": 16, + "y": -688 } }, { - "id": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" + "name": "a1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 584, - "y": -128 + "x": 352, + "y": -664 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "type": "basic.input", "data": { - "name": "" + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 856, - "y": -56 + "x": -312, + "y": -632 } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "type": "basic.inputLabel", "data": { - "name": "rst", - "clock": false + "name": "a0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia", + "blockColor": "deeppink" }, "position": { - "x": 200, - "y": -56 + "x": 16, + "y": -616 } }, { - "id": "0da42cdc-7d03-494b-acec-9b2095f8d663", - "type": "basic.input", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "d", - "clock": false + "name": "c" }, "position": { - "x": 200, - "y": 80 + "x": 960, + "y": -608 } }, { - "id": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "type": "basic.constant", + "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "type": "basic.outputLabel", "data": { - "name": "", - "value": "0", - "local": false + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 712, - "y": -160 + "x": 352, + "y": -584 } }, { - "id": "3238f8fb-ade5-4d95-a02d-692defd900d6", - "type": "basic.info", + "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "type": "basic.output", "data": { - "info": "Reset input: Active high \nWhen rst = 1, the DFF is reset to 0", - "readonly": true + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 184, - "y": -120 - }, - "size": { - "width": 272, - "height": 48 + "x": 960, + "y": -544 } }, { - "id": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 360, - "y": -56 + "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "type": "basic.outputLabel", + "data": { + "name": "a0", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "deeppink", + "size": 4 }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 184, + "y": -472 } }, { - "id": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 536, - "y": -40 + "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 8, + "y": -440 } }, { - "id": "ca985673-a11d-42a0-926c-d564fe02b723", - "type": "basic.info", + "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "type": "basic.outputLabel", "data": { - "info": "Data input", - "readonly": true + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 216, - "y": 56 - }, - "size": { - "width": 104, - "height": 40 + "x": 184, + "y": -408 } }, { - "id": "f36afb1b-0486-4fcf-98ad-a8b6d64ab550", - "type": "basic.info", + "id": "63477487-9493-4058-a7e1-9bab443ec466", + "type": "basic.input", "data": { - "info": "System clock", - "readonly": true + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 208, - "y": -304 - }, - "size": { - "width": 144, - "height": 40 + "x": -320, + "y": -384 } }, { - "id": "9833aab1-3c8e-40a6-859b-ce1960837256", - "type": "basic.info", + "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "type": "basic.inputLabel", "data": { - "info": "Initial default \nvalue: 0", - "readonly": true + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 720, - "y": -200 - }, - "size": { - "width": 152, - "height": 64 + "x": 8, + "y": -368 } }, { - "id": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 712, - "y": -56 + "x": -168, + "y": -384 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -152, + "y": -632 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "position": { + "x": 352, + "y": -456 + }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "position": { + "x": 760, + "y": -544 }, "size": { "width": 96, "height": 64 } + }, + { + "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 520, + "y": -600 + }, + "size": { + "width": 96, + "height": 96 + } } ], "wires": [ { "source": { - "block": "e5f6cfba-f822-4d53-a924-926407bc4e3f", - "port": "out" + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "4b0bae4c-c796-429c-ac44-785afc2f4c89", + "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", "port": "inlabel" }, - "vertices": [] + "size": 4 + }, + { + "source": { + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "4caec7c8-0763-44fc-9b7b-110e0260b74b", + "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "port": "outlabel" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "port": "outlabel" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 }, - "vertices": [] + "size": 4 }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "port": "outlabel" + }, + "target": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "63477487-9493-4058-a7e1-9bab443ec466", "port": "out" }, "target": { - "block": "4d2e11c4-2f46-4c0a-9d1a-b641b417d495", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "0da42cdc-7d03-494b-acec-9b2095f8d663", + "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", "port": "out" }, "target": { - "block": "c5b4454d-c8bc-420b-b7b6-ad21ca8304e0", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 }, { "source": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 + }, + { + "source": { + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 + }, + { + "source": { + "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + }, + "target": { + "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "port": "in" + }, + "size": 8 + }, + { + "source": { + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", @@ -4528,23 +5478,23 @@ }, { "source": { - "block": "63e9825a-4f37-4c3c-b118-e2bbd28d5ac7", - "port": "constant-out" + "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "9abbb3b1-2218-4aa2-bb22-add4c00ec265", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" + "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" } } ] } } }, - "852bc8c84d29887beb3432bd25e5e7b6419b7f06": { + "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { "package": { - "name": "Bus16-Split-quarter", + "name": "Bus8-Split-half", "version": "0.1", - "description": "Bus16-Split-quarter: Split the 16-bits bus into four buses of the same size", + "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", "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" }, @@ -4552,60 +5502,34 @@ "graph": { "blocks": [ { - "id": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "type": "basic.output", - "data": { - "name": "3", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 608, - "y": 64 - } - }, - { - "id": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "id": "637e64f4-0a6b-4037-9a75-89397e078a58", "type": "basic.output", "data": { - "name": "2", + "name": "1", "range": "[3:0]", "size": 4 }, "position": { - "x": 640, - "y": 208 + "x": 584, + "y": 104 } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", + "range": "[7:0]", "clock": false, - "size": 16 - }, - "position": { - "x": 96, - "y": 224 - } - }, - { - "id": "b69090a8-121e-4bcb-8e4b-55faee72dc70", - "type": "basic.output", - "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "size": 8 }, "position": { - "x": 608, - "y": 312 + "x": 120, + "y": 208 } }, { - "id": "df399ca5-160e-470b-90e2-3c3b488cda5e", + "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "type": "basic.output", "data": { "name": "0", @@ -4613,35 +5537,25 @@ "size": 4 }, "position": { - "x": 552, - "y": 400 + "x": 584, + "y": 232 } }, { "id": "16e78204-213e-4833-9096-89d735307ec2", "type": "basic.code", "data": { - "code": "assign o3 = i[15:12];\nassign o2 = i[11:8];\nassign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", "params": [], "ports": { "in": [ { "name": "i", - "range": "[15:0]", - "size": 16 + "range": "[7:0]", + "size": 8 } ], "out": [ - { - "name": "o3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o2", - "range": "[3:0]", - "size": 4 - }, { "name": "o1", "range": "[3:0]", @@ -4661,40 +5575,18 @@ }, "size": { "width": 240, - "height": 160 + "height": 120 } } ], "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 - }, - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "df399ca5-160e-470b-90e2-3c3b488cda5e", - "port": "in" - }, - "size": 4 - }, { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", "port": "o1" }, "target": { - "block": "b69090a8-121e-4bcb-8e4b-55faee72dc70", + "block": "637e64f4-0a6b-4037-9a75-89397e078a58", "port": "in" }, "size": 4 @@ -4702,1099 +5594,867 @@ { "source": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o2" + "port": "o0" }, "target": { - "block": "48ab86b5-3c15-47e8-97b4-bdba0d4c95a9", + "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", "port": "in" }, "size": 4 }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o3" + "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", + "port": "out" }, "target": { - "block": "8bbb6d1c-9f19-4d90-937c-492fec692420", - "port": "in" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" }, - "size": 4 + "size": 8 } ] } } }, - "401a2859b9822a66cc19b8c5277d4c310a836edd": { + "25966b9480fc28011aea0e17452c30d5ff9d76e8": { "package": { - "name": "Bus16-Join-quarter", + "name": "Adder-4bits", "version": "0.1", - "description": "Bus16-Join-quarter: Join the four same buses into an 16-bits Bus", + "description": "Adder-4bits: Adder of two operands of 4 bits", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "type": "basic.input", + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", "data": { - "name": "3", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": 104, - "y": 104 + "x": 8, + "y": -744 } }, { - "id": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "type": "basic.input", + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", "data": { - "name": "2", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, "position": { - "x": 104, - "y": 184 + "x": 576, + "y": -736 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "name": "c" }, "position": { - "x": 720, - "y": 224 + "x": 920, + "y": -696 } }, { - "id": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "type": "basic.input", + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, "position": { - "x": 104, - "y": 248 + "x": 8, + "y": -688 + } + }, + { + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 576, + "y": -672 + } + }, + { + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" + }, + "position": { + "x": 8, + "y": -632 } }, { - "id": "7f009181-43fb-4806-a540-c2049656ce40", + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", "type": "basic.input", "data": { - "name": "0", + "name": "", "range": "[3:0]", "clock": false, "size": 4 }, "position": { - "x": 104, - "y": 312 + "x": -312, + "y": -632 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i3, i2, i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i3", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i2", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "i0", - "range": "[3:0]", - "size": 4 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 344, - "height": 160 + "x": 456, + "y": -584 } - } - ], - "wires": [ - { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" - }, - "size": 16 }, { - "source": { - "block": "7f009181-43fb-4806-a540-c2049656ce40", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 4 + "position": { + "x": 8, + "y": -576 + } }, { - "source": { - "block": "d250cf47-8011-489b-8ddf-cc19f9e3f937", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "size": 4 + "position": { + "x": 456, + "y": -528 + } }, { - "source": { - "block": "b875d929-cdf0-4d61-bf25-af544dcb5ff8", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i2" - }, - "vertices": [ - { - "x": 224, - "y": 232 - } - ], - "size": 4 - }, - { - "source": { - "block": "79aa8ee8-2337-4ceb-b930-7e6cea70b9df", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i3" - }, - "vertices": [ - { - "x": 240, - "y": 168 - } - ], - "size": 4 - } - ] - } - } - }, - "8ecd5933e4bd5916eca00d6b654d6760012c47a6": { - "package": { - "name": "Inc1-16bits", - "version": "0.1", - "description": "Inc1-16bit: Increment a 16-bits number by one", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22387.891%22%20height=%22310.09%22%20viewBox=%220%200%20363.64764%20290.70999%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.759%2055.834v79.813h79.508v35.946H115.76v79.813h-36.25v-79.813H-.002v-35.946h79.51V55.834z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3Cpath%20d=%22M196.193%20257.608h64.256V35.828l-69.902%2014.02V14.018L260.06%200h39.332v257.608h64.257v33.102H196.193z%22%20style=%22line-height:1.25%22%20font-size=%22398.777%22%20stroke-width=%229.969%22/%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 624, - "y": -168 + "x": -8, + "y": -448 } }, { - "id": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "type": "basic.input", + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -152 + "x": 328, + "y": -440 } }, { - "id": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "type": "basic.output", + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 624, - "y": -104 + "x": -8, + "y": -384 } }, { - "id": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "type": "basic.constant", + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", "data": { "name": "", - "value": "1", - "local": true + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 456, - "y": -256 - } - }, - { - "id": "12fb4602-d67f-4129-a777-f04945adf29d", - "type": "26569688c377bf52132e5f1de5a15da7143d9388", - "position": { - "x": 456, - "y": -152 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "x": -312, + "y": -384 } }, { - "source": { - "block": "cd0d6f4d-9898-4114-94a9-0b4b98223c27", - "port": "constant-out" + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "e728fdca-755f-4f2d-98e7-0716b1c5258f" + "position": { + "x": 328, + "y": -376 } }, { - "source": { - "block": "cc343d02-8e43-4dd6-9999-21e29934ed5b", - "port": "out" - }, - "target": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "1253e5dc-89f9-4074-874c-82628c0e1d6f" - }, - "size": 16 - }, - { - "source": { - "block": "12fb4602-d67f-4129-a777-f04945adf29d", - "port": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7" - }, - "target": { - "block": "a7420015-7f67-4b9a-9dba-b3a58ce79fdc", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "26569688c377bf52132e5f1de5a15da7143d9388": { - "package": { - "name": "AdderK-16bits", - "version": "0.1", - "description": "AdderK-16bit: Adder of 16-bit operand and 16-bit constant", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", "type": "basic.output", "data": { - "name": "c" + "name": "s", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 624, - "y": -168 + "x": 1064, + "y": -368 } }, { - "id": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "type": "basic.output", + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 624, - "y": -96 + "x": -16, + "y": -320 } }, { - "id": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "type": "basic.input", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 232, - "y": -56 + "x": 184, + "y": -296 } }, { - "id": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "type": "basic.constant", + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", "data": { - "name": "", - "value": "0", - "local": false + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 232, - "y": -272 + "x": -32, + "y": -264 } }, { - "id": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "type": "651fa32fcf52b534a766fdb2ba638a010338f268", - "position": { - "x": 232, - "y": -168 - }, + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" + }, + "position": { + "x": 184, + "y": -232 + } + }, + { + "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", + "position": { + "x": 320, + "y": -248 + }, "size": { "width": 96, "height": 64 } }, { - "id": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "type": "bc66d79524a86b172c0ff190e607bca7c0694b8b", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 456, - "y": -152 + "x": 464, + "y": -392 }, "size": { "width": 96, - "height": 64 + "height": 96 + } + }, + { + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 608, + "y": -544 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "e728fdca-755f-4f2d-98e7-0716b1c5258f", - "port": "constant-out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" } }, { "source": { - "block": "3ed9c4cb-d412-46e8-86cc-9943f564ccd0", - "port": "d54af040-d87a-431d-a15f-d5deb4795af5" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "353729bb-5213-45a7-a8e1-4e1d812492bd" - }, - "size": 16 + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" + } }, { "source": { - "block": "1253e5dc-89f9-4074-874c-82628c0e1d6f", - "port": "out" + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4" - }, - "size": 16 + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "82e8e1b8-0816-489f-9427-b03956cdc86a", - "port": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9" + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, "target": { - "block": "f4640f0f-2d2b-40c6-adb2-2581f7d1f9a7", - "port": "in" - }, - "size": 16 - } - ] - } - } - }, - "651fa32fcf52b534a766fdb2ba638a010338f268": { - "package": { - "name": "16-bits-gen-constant", - "version": "0.0.2", - "description": "Generic: 16-bits generic constant", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, { - "id": "d54af040-d87a-431d-a15f-d5deb4795af5", - "type": "basic.output", - "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 960, - "y": 248 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 128 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k", - "range": "[15:0]", - "size": 16 - } - ] - } + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 672, - "y": 248 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" + } + }, + { + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "size": { - "width": 208, - "height": 64 + "target": { + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } - } - ], - "wires": [ + }, { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, "target": { - "block": "d54af040-d87a-431d-a15f-d5deb4795af5", - "port": "in" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } + }, + { + "source": { + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, - "size": 16 - } - ] - } - } - }, - "bc66d79524a86b172c0ff190e607bca7c0694b8b": { - "package": { - "name": "Adder-16bits", - "version": "0.1", - "description": "Adder-16bits: Adder of two operands of 16 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, { - "id": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "type": "basic.inputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 8, - "y": -664 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { - "id": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "type": "basic.outputLabel", - "data": { - "name": "a1", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 352, - "y": -664 + "target": { + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" + }, + "vertices": [ + { + "x": -24, + "y": -696 + } + ] + }, + { + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "position": { - "x": 960, - "y": -608 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "type": "basic.input", - "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": -320, - "y": -608 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "type": "basic.inputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 8, - "y": -592 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "4743defe-36c0-40a2-aaf0-188272583034", - "type": "basic.outputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "source": { + "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 352, - "y": -584 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, { - "id": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", - "type": "basic.output", - "data": { - "name": "s", - "range": "[15:0]", - "size": 16 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "position": { - "x": 960, - "y": -544 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "position": { - "x": 8, - "y": -472 - } + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { - "id": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[7:0]", - "blockColor": "deeppink", - "size": 8 + "source": { + "block": "d192d0af-e7be-4be6-925a-50227d80784c", + "port": "out" }, - "position": { - "x": 184, - "y": -472 + "target": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" + }, + "target": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" + }, + "target": { + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" + }, + "size": 4 + }, + { + "source": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] + }, + { + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { - "id": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", + "source": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + }, + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + } + } + ] + } + } + }, + "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { + "package": { + "name": "Adder-1bit", + "version": "0.1", + "description": "Adder-1bit: Adder of two operands of 1 bit", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "clock": false }, "position": { - "x": -320, - "y": -424 + "x": 280, + "y": -224 } }, { - "id": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "type": "basic.inputLabel", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "name": "b0", - "range": "[7:0]", - "pins": [ - { - "index": "7", - "name": "", - "value": "" - }, - { - "index": "6", - "name": "", - "value": "" - }, - { - "index": "5", - "name": "", - "value": "" - }, - { - "index": "4", - "name": "", - "value": "" - }, - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "name": "c" }, "position": { - "x": 8, - "y": -408 + "x": 616, + "y": -176 } }, { - "id": "7114cf32-af2c-438f-b816-1043a8bd819d", - "type": "basic.outputLabel", + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "type": "basic.input", "data": { - "name": "b0", - "range": "[7:0]", - "blockColor": "fuchsia", - "size": 8 + "name": "", + "clock": false }, "position": { - "x": 184, - "y": -408 + "x": 280, + "y": -152 } }, { - "id": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", - "position": { - "x": -168, - "y": -424 + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", + "type": "basic.output", + "data": { + "name": "s" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 616, + "y": -96 } }, { - "id": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": -168, - "y": -608 + "x": 456, + "y": -168 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "type": "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893", + "id": "e80cc244-1751-4524-9f77-734a36b24a88", + "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", "position": { - "x": 352, - "y": -456 + "x": 304, + "y": -64 }, "size": { "width": 96, "height": 64 } - }, + } + ], + "wires": [ { - "id": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "type": "c3c498191b14e9288a85fa2871b3966665f75475", - "position": { - "x": 520, - "y": -600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "type": "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1", - "position": { - "x": 760, - "y": -544 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "a7cd6890-7130-4f25-9966-b5ca1132d597", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "a3761c9e-14ee-47ef-95f0-ddbb132ba6cf", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "size": 8 - }, - "target": { - "block": "6736a55c-7818-4da9-9c1a-f57200ad2526", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "size": 8 - }, - "target": { - "block": "e2589574-b6cc-4faf-8e69-3d23248bcba2", - "port": "inlabel" - }, - "size": 8 - }, - { - "source": { - "block": "7114cf32-af2c-438f-b816-1043a8bd819d", - "port": "outlabel" - }, - "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "63477487-9493-4058-a7e1-9bab443ec466", - "size": 8 - }, - "size": 8 - }, - { - "source": { - "block": "7d042e3c-08e0-4027-ba97-6f6143ac0b7e", - "port": "outlabel" + "source": { + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "size": 8 - }, - "size": 8 + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + } }, { "source": { - "block": "4f2c77a9-f54e-4c7e-b1b8-d1739ea521c7", - "port": "outlabel" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "size": 8 + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": 8 + "vertices": [ + { + "x": 400, + "y": -168 + } + ] }, { "source": { - "block": "4743defe-36c0-40a2-aaf0-188272583034", - "port": "outlabel" + "block": "e80cc244-1751-4524-9f77-734a36b24a88", + "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" }, "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "3867504b-f331-4e0e-b923-acc86cb4255c", - "size": 8 - }, - "size": 8 + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + } }, { "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { @@ -5804,474 +6464,229 @@ }, { "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } - }, - { - "source": { - "block": "eeb34637-ba55-4a7f-803e-e85d9b9c7fc4", - "port": "out" - }, - "target": { - "block": "4cb18fdd-66bb-461c-ae6d-1454c8e4a9a6", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "353729bb-5213-45a7-a8e1-4e1d812492bd", - "port": "out" - }, - "target": { - "block": "e3cde6db-ea93-4550-affd-14856b75d5a5", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f" - }, - "size": 16 - }, - { - "source": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "79c56f9a-597f-491e-b1d1-d321f63303c2" + "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "14253a9f-c3ef-4ada-bb54-dbbed784b7a9", + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0857be54-1eea-4619-841f-b1bb49aa66d0", - "port": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "5a35cd57-1006-4f6d-b263-5b977e9ef142" - }, - "size": 8 - }, - { - "source": { - "block": "64c3574b-3227-40ab-ab03-c2e2af710a45", - "port": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74" - }, - "target": { - "block": "17bd7ef3-6604-48a9-9c2e-50a8be908636", - "port": "38fdb02d-4323-4a34-9ffe-8385f844b660" - }, - "size": 8 + } } ] } } }, - "306ca367fbbc5181b3c709d73f447e0710871a1d": { + "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { "package": { - "name": "Bus16-Split-half", + "name": "AdderC-1bit", "version": "0.1", - "description": "Bus16-Split-half: Split the 16-bits bus into two buses of the same size", + "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", "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" + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "type": "basic.output", + "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "size": 8 + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 608, - "y": 176 + "x": 504, + "y": -208 } }, { - "id": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "a", + "clock": false }, "position": { - "x": 96, - "y": 208 + "x": 136, + "y": -192 } }, { - "id": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", + "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true + }, + "position": { + "x": 272, + "y": -192 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", "type": "basic.output", "data": { - "name": "0", - "range": "[7:0]", - "size": 8 + "name": "c" }, "position": { - "x": 608, - "y": 272 + "x": 1112, + "y": -176 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "type": "basic.outputLabel", "data": { - "code": "assign o1 = i[15:8];\nassign o0 = i[7:0];", - "params": [], - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "o0", - "range": "[7:0]", - "size": 8 - } - ] - } + "blockColor": "fuchsia", + "name": "b" }, "position": { - "x": 272, - "y": 176 - }, - "size": { - "width": 240, - "height": 120 + "x": 504, + "y": -144 } - } - ], - "wires": [ - { - "source": { - "block": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 16 }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" - }, - "target": { - "block": "6ac467f0-b16b-44ef-8f03-ae206c13186e", - "port": "in" + "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "type": "basic.input", + "data": { + "name": "b", + "clock": false }, - "size": 8 + "position": { + "x": 136, + "y": -120 + } }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" - }, - "target": { - "block": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6", - "port": "in" - }, - "size": 8 - } - ] - } - } - }, - "cb23aa3d8a3e95bd194fd9ec9b9c40b36595d893": { - "package": { - "name": "Adder-8bits", - "version": "0.1", - "description": "Adder-8bits: Adder of two operands of 8 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "id": "65936289-69ce-4e26-be4e-44f8a3706934", "type": "basic.inputLabel", "data": { - "name": "a1", - "range": "[3:0]", + "blockColor": "fuchsia", + "name": "b", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" + "virtual": true }, "position": { - "x": 16, - "y": -688 + "x": 272, + "y": -120 } }, { - "id": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" }, "position": { - "x": 352, - "y": -664 + "x": 648, + "y": -96 } }, { - "id": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", + "id": "5e915366-608a-431a-bf68-8c64fb4c302c", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "ci", + "clock": false }, "position": { - "x": -312, - "y": -632 + "x": 136, + "y": -40 } }, { - "id": "f3b83846-5723-40b3-a598-fd21797f7ce1", + "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "type": "basic.inputLabel", "data": { - "name": "a0", - "range": "[3:0]", + "blockColor": "navy", + "name": "ci", "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], "virtual": true, - "oldBlockColor": "fuchsia", - "blockColor": "deeppink" - }, - "position": { - "x": 16, - "y": -616 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "oldBlockColor": "fuchsia" }, "position": { - "x": 960, - "y": -608 + "x": 272, + "y": -40 } }, { - "id": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "id": "79149d67-753e-414e-ba2a-49ba4edfe523", "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", "blockColor": "fuchsia", - "size": 4 + "name": "a" }, "position": { - "x": 352, - "y": -584 + "x": 480, + "y": 24 } }, { - "id": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", + "id": "c7d2d573-b901-420e-a923-6832e5b18e34", "type": "basic.output", "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "name": "s" }, "position": { - "x": 960, - "y": -544 + "x": 992, + "y": 56 } }, { - "id": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "id": "edf4525b-edd8-40fa-b784-631b102fb907", "type": "basic.outputLabel", "data": { - "name": "a0", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "deeppink", - "size": 4 + "blockColor": "fuchsia", + "name": "b" }, "position": { - "x": 184, - "y": -472 + "x": 480, + "y": 88 } }, { - "id": "d5b2605b-a224-4d60-896b-d1553fd943e1", - "type": "basic.inputLabel", + "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", + "type": "basic.outputLabel", "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "blockColor": "navy", + "name": "ci", + "oldBlockColor": "fuchsia" }, "position": { - "x": 8, - "y": -440 + "x": 648, + "y": 120 } }, { - "id": "e3beef79-c05d-4705-8dbc-de5b7b94941a", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 184, - "y": -408 - } - }, - { - "id": "63477487-9493-4058-a7e1-9bab443ec466", - "type": "basic.input", - "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": -320, - "y": -384 - } - }, - { - "id": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", - "type": "basic.inputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" - }, - "position": { - "x": 8, - "y": -368 - } - }, - { - "id": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -168, - "y": -384 + "x": 648, + "y": 40 }, "size": { "width": 96, @@ -6279,11 +6694,11 @@ } }, { - "id": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", "position": { - "x": -152, - "y": -632 + "x": 832, + "y": 56 }, "size": { "width": 96, @@ -6291,11 +6706,11 @@ } }, { - "id": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "type": "25966b9480fc28011aea0e17452c30d5ff9d76e8", + "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 352, - "y": -456 + "x": 808, + "y": -80 }, "size": { "width": 96, @@ -6303,11 +6718,11 @@ } }, { - "id": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 760, - "y": -544 + "x": 632, + "y": -192 }, "size": { "width": 96, @@ -6315,435 +6730,381 @@ } }, { - "id": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "dd3259d5-99f6-47f2-881c-4e969e324444", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 520, - "y": -600 + "x": 960, + "y": -176 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "df32424c-55e8-45ed-9adc-3d8bb146e3e0", + "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", + "port": "out" }, "target": { - "block": "d5b2605b-a224-4d60-896b-d1553fd943e1", + "block": "65936289-69ce-4e26-be4e-44f8a3706934", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "port": "out" }, "target": { - "block": "1c85838b-e269-4a65-a112-0a1bbca9b2a1", + "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "79149d67-753e-414e-ba2a-49ba4edfe523", + "port": "outlabel" }, "target": { - "block": "f3b83846-5723-40b3-a598-fd21797f7ce1", - "port": "inlabel" - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "e3beef79-c05d-4705-8dbc-de5b7b94941a", + "block": "edf4525b-edd8-40fa-b784-631b102fb907", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "6de2e227-2992-41fb-a52e-16e86632cd2c", + "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", "port": "outlabel" }, "target": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "fb36b075-bb31-4aa7-8dbd-f0d108126f21", + "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "d01b9c0c-a541-49e6-b5aa-a0c0f21612a0", + "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", "port": "outlabel" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 - }, - "size": 4 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "63477487-9493-4058-a7e1-9bab443ec466", - "port": "out" + "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", + "port": "outlabel" }, "target": { - "block": "6781108b-d67f-4ee8-97a9-79bab2c400b1", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b4b08c4b-8eb1-4cd3-a1bf-a45bf7177ed3", - "port": "out" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ffcdd533-6cad-4ba4-9f88-4b1030d78af8", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "size": 4 + "block": "c7d2d573-b901-420e-a923-6832e5b18e34", + "port": "in" + } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "b8a72421-dc14-4c18-b343-9c3516b37f54", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "dc2d9a2c-9ee9-4985-a678-d88c89fd8b74", - "port": "in" - }, - "size": 8 + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + } }, { "source": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } }, { "source": { - "block": "7b82019f-c8a7-4b8c-baa1-6eb224a95cb2", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "dd3259d5-99f6-47f2-881c-4e969e324444", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "7186727e-33f4-45cd-a73d-e8f1ad0b2cbc", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } } ] } } }, - "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a": { + "873425949b2a80f1a7f66f320796bcd068a59889": { "package": { - "name": "Bus8-Split-half", - "version": "0.1", - "description": "Bus8-Split-half: Split the 8-bits bus into two buses of the same size", - "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" + "name": "OR2", + "version": "1.0.2", + "description": "OR2: Two bits input OR gate", + "author": "Jesús Arroyo, Juan González", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "637e64f4-0a6b-4037-9a75-89397e078a58", - "type": "basic.output", + "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "type": "basic.input", "data": { - "name": "1", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 104 + "x": 112, + "y": 40 } }, { - "id": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "type": "basic.input", + "id": "664caf9e-5f40-4df4-800a-b626af702e62", + "type": "basic.output", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "" }, "position": { - "x": 120, - "y": 208 + "x": 608, + "y": 72 } }, { - "id": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "type": "basic.output", + "id": "97b51945-d716-4b6c-9db9-970d08541249", + "type": "basic.input", "data": { - "name": "0", - "range": "[3:0]", - "size": 4 + "name": "" }, "position": { - "x": 584, - "y": 232 + "x": 112, + "y": 96 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", + "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", "type": "basic.code", "data": { - "code": "assign o1 = i[7:4];\nassign o0 = i[3:0];", + "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", "params": [], "ports": { "in": [ { - "name": "i", - "range": "[7:0]", - "size": 8 + "name": "a" + }, + { + "name": "b" } ], "out": [ { - "name": "o1", - "range": "[3:0]", - "size": 4 - }, - { - "name": "o0", - "range": "[3:0]", - "size": 4 + "name": "c" } ] } }, "position": { - "x": 272, - "y": 176 + "x": 256, + "y": 48 }, "size": { - "width": 240, - "height": 120 + "width": 312, + "height": 104 } } ], "wires": [ { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o1" + "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", + "port": "out" }, "target": { - "block": "637e64f4-0a6b-4037-9a75-89397e078a58", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "a" + } }, { "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o0" + "block": "97b51945-d716-4b6c-9db9-970d08541249", + "port": "out" }, "target": { - "block": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "port": "in" - }, - "size": 4 + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "b" + } }, { "source": { - "block": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e", - "port": "out" + "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", + "port": "c" }, "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i" - }, - "size": 8 + "block": "664caf9e-5f40-4df4-800a-b626af702e62", + "port": "in" + } } ] } } }, - "25966b9480fc28011aea0e17452c30d5ff9d76e8": { + "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { "package": { - "name": "Adder-4bits", - "version": "0.1", - "description": "Adder-4bits: Adder of two operands of 4 bits", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "name": "bit-0", + "version": "0.2", + "description": "Constant bit 0", + "author": "Jesus Arroyo", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", + "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "" }, "position": { - "x": 8, - "y": -744 + "x": 456, + "y": 120 } }, { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", + "params": [], + "ports": { + "in": [], + "out": [ + { + "name": "q" + } + ] + } }, "position": { - "x": 576, - "y": -736 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "x": 168, + "y": 112 }, - "position": { - "x": 920, - "y": -696 + "size": { + "width": 248, + "height": 80 } - }, + } + ], + "wires": [ { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "source": { + "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", + "port": "q" }, - "position": { - "x": 8, - "y": -688 + "target": { + "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", + "port": "in" } - }, + } + ] + } + } + }, + "c4f23ad05c2010ec9bd213c8814c9238873037ae": { + "package": { + "name": "Bus4-Split-all", + "version": "0.1", + "description": "Bus4-Split-all: Split the 4-bits bus into its 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": { + "graph": { + "blocks": [ { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "3" }, "position": { "x": 576, - "y": -672 + "y": 80 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "33072210-9ba0-4659-8339-95952b939e6e", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "2" }, "position": { - "x": 8, - "y": -632 + "x": 600, + "y": 144 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", "type": "basic.input", "data": { "name": "", @@ -6752,663 +7113,788 @@ "size": 4 }, "position": { - "x": -312, - "y": -632 + "x": 128, + "y": 184 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "1" }, "position": { - "x": 456, - "y": -584 + "x": 592, + "y": 240 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "0f7487e5-b070-4277-bba6-acf69934afca", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "0" }, "position": { - "x": 8, - "y": -576 + "x": 568, + "y": 296 } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "code": "assign o3 = i[3];\nassign o2 = i[2];\nassign o1 = i[1];\nassign o0 = i[0];", + "params": [], + "ports": { + "in": [ + { + "name": "i", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o3" + }, + { + "name": "o2" + }, + { + "name": "o1" + }, + { + "name": "o0" + } + ] + } }, "position": { - "x": 456, - "y": -528 + "x": 296, + "y": 176 + }, + "size": { + "width": 208, + "height": 80 + } + } + ], + "wires": [ + { + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o1" + }, + "target": { + "block": "f5a71d7b-de20-4527-80c8-0eb20de0dc77", + "port": "in" } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o0" }, - "position": { - "x": -8, - "y": -448 + "target": { + "block": "0f7487e5-b070-4277-bba6-acf69934afca", + "port": "in" } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", - "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o2" }, - "position": { - "x": 328, - "y": -440 + "target": { + "block": "33072210-9ba0-4659-8339-95952b939e6e", + "port": "in" } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o3" }, - "position": { - "x": -8, - "y": -384 + "target": { + "block": "bbe1895b-be8b-4237-b0d1-ae592e3e6208", + "port": "in" } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "source": { + "block": "0ebd46a4-769b-45e6-bcaf-e3796264aed3", + "port": "out" + }, + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i" + }, + "size": 4 + } + ] + } + } + }, + "84f0a15761ee8b753f67079819a7614923939472": { + "package": { + "name": "Bus4-Join-all", + "version": "0.1", + "description": "Bus4-Join-all: Join all the wires into a 4-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", "type": "basic.input", "data": { - "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "name": "3", + "clock": false }, "position": { - "x": -312, - "y": -384 + "x": 80, + "y": 64 } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", + "id": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1" + "name": "2", + "clock": false }, "position": { - "x": 328, - "y": -376 + "x": 80, + "y": 136 } }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "id": "55180947-6349-4a04-a151-ad69ea2b155e", "type": "basic.output", "data": { - "name": "s", + "name": "", "range": "[3:0]", "size": 4 }, "position": { - "x": 1064, - "y": -368 + "x": 712, + "y": 200 } }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", - "type": "basic.inputLabel", + "id": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "name": "1", + "clock": false }, "position": { - "x": -16, - "y": -320 + "x": 80, + "y": 208 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "type": "basic.outputLabel", + "id": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "0", + "clock": false }, "position": { - "x": 184, - "y": -296 + "x": 80, + "y": 272 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, + "code": "assign o = {i3, i2, i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i3" + }, + { + "name": "i2" + }, + { + "name": "i1" + }, + { + "name": "i0" + } + ], + "out": [ + { + "name": "o", + "range": "[3:0]", + "size": 4 + } + ] + } + }, "position": { - "x": -32, - "y": -264 + "x": 296, + "y": 176 + }, + "size": { + "width": 344, + "height": 104 } - }, + } + ], + "wires": [ { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b0", - "oldBlockColor": "fuchsia" + "source": { + "block": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8", + "port": "out" }, - "position": { - "x": 184, - "y": -232 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" } }, { - "id": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "type": "1ea21df64c18f01d8f4b905c437ccf0ca332baf6", - "position": { - "x": 320, - "y": -248 + "source": { + "block": "e4111201-8441-4e7d-bcd2-bcf9d265d043", + "port": "out" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 464, - "y": -392 + "source": { + "block": "346b4ae4-4bb6-4845-9c17-3b25e0dde718", + "port": "out" }, - "size": { - "width": 96, - "height": 96 - } + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i2" + }, + "vertices": [ + { + "x": 200, + "y": 176 + } + ] }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", - "position": { - "x": 608, - "y": -544 + "source": { + "block": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18", + "port": "out" }, - "size": { - "width": 96, - "height": 96 - } + "target": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i3" + }, + "vertices": [ + { + "x": 224, + "y": 128 + } + ] }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "source": { + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, - "size": { - "width": 96, - "height": 128 + "target": { + "block": "55180947-6349-4a04-a151-ad69ea2b155e", + "port": "in" + }, + "size": 4 + } + ] + } + } + }, + "afb28fd5426aea14477d11cbe30a290679f789f8": { + "package": { + "name": "Bus8-Join-half", + "version": "0.1", + "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "type": "basic.input", + "data": { + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 + }, + "position": { + "x": 128, + "y": 168 } }, { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -152, - "y": -664 + "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "size": { - "width": 96, - "height": 128 + "position": { + "x": 640, + "y": 200 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 896, - "y": -400 + "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "type": "basic.input", + "data": { + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "size": { - "width": 96, - "height": 128 + "position": { + "x": 128, + "y": 224 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "16e78204-213e-4833-9096-89d735307ec2", + "type": "basic.code", + "data": { + "code": "assign o = {i1, i0};\n", + "params": [], + "ports": { + "in": [ + { + "name": "i1", + "range": "[3:0]", + "size": 4 + }, + { + "name": "i0", + "range": "[3:0]", + "size": 4 + } + ], + "out": [ + { + "name": "o", + "range": "[7:0]", + "size": 8 + } + ] + } + }, "position": { - "x": 744, - "y": -688 + "x": 296, + "y": 176 }, "size": { - "width": 96, - "height": 96 + "width": 272, + "height": 104 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "o" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "port": "out" }, "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i1" + }, + "size": 4 }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", - "port": "inlabel" - } - }, + "block": "16e78204-213e-4833-9096-89d735307ec2", + "port": "i0" + }, + "size": 4 + } + ] + } + } + }, + "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "package": { + "name": "AdderC-4bits", + "version": "0.1", + "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" + "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 8, + "y": -744 } }, { - "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", - "port": "outlabel" + "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a3", + "oldBlockColor": "deeppink" }, - "target": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 576, + "y": -736 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "c" }, - "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "port": "inlabel" + "position": { + "x": 920, + "y": -696 } }, { - "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "port": "outlabel" + "id": "73a0a48e-d345-4eda-8603-782e9865d928", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -688 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "id": "05fb13c5-879a-422f-84a8-56d1db8816da", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "port": "inlabel" + "position": { + "x": 576, + "y": -672 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "deeppink" }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" + "position": { + "x": 8, + "y": -632 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" + "position": { + "x": -312, + "y": -632 } }, { - "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a2", + "oldBlockColor": "deeppink" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 456, + "y": -584 } }, { - "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "type": "basic.inputLabel", + "data": { + "blockColor": "deeppink", + "name": "a0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "position": { + "x": 8, + "y": -576 } }, { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "id": "3c8597e6-ca79-494a-9a53-04c284205216", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" + "position": { + "x": 456, + "y": -528 } }, { - "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "position": { + "x": -8, + "y": -448 + } }, { - "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "type": "basic.outputLabel", + "data": { + "blockColor": "deeppink", + "name": "a1", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "position": { + "x": 328, + "y": -440 } }, { - "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": -8, + "y": -384 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "type": "basic.input", + "data": { + "name": "", + "range": "[3:0]", + "clock": false, + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": -312, + "y": -384 } }, { - "source": { - "block": "e7d0a130-cf6b-4220-a06f-42543db0214f", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1" }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 328, + "y": -376 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "type": "basic.output", + "data": { + "name": "s", + "range": "[3:0]", + "size": 4 }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 1064, + "y": -368 } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] - }, - { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "527c9113-e440-454b-b427-182b646c10f5", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "b1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": -16, + "y": -320 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - } - ] - } - } - }, - "1ea21df64c18f01d8f4b905c437ccf0ca332baf6": { - "package": { - "name": "Adder-1bit", - "version": "0.1", - "description": "Adder-1bit: Adder of two operands of 1 bit", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", + "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "deeppink", + "name": "a0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -224 + "x": 184, + "y": -296 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "b652825e-10ba-47cc-9832-e39d73586234", + "type": "basic.inputLabel", "data": { - "name": "c" + "blockColor": "fuchsia", + "name": "b0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 616, - "y": -176 + "x": -32, + "y": -264 } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", + "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": false + "blockColor": "fuchsia", + "name": "b0", + "oldBlockColor": "fuchsia" }, "position": { - "x": 280, - "y": -152 + "x": 184, + "y": -232 } }, { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", "data": { - "name": "s" + "name": "ci", + "clock": false }, "position": { - "x": 616, - "y": -96 + "x": -296, + "y": -168 } }, { - "id": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 456, - "y": -168 + "x": 464, + "y": -392 }, "size": { "width": 96, @@ -7416,789 +7902,931 @@ } }, { - "id": "e80cc244-1751-4524-9f77-734a36b24a88", - "type": "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640", + "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", "position": { - "x": 304, - "y": -64 + "x": 608, + "y": -544 }, "size": { "width": 96, - "height": 64 + "height": 96 + } + }, + { + "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -168, + "y": -416 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "57e59301-2919-4f06-ba95-54ce5d99d774", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": -152, + "y": -664 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "11342001-e6e0-443b-af87-0e5d7ada0227", + "type": "84f0a15761ee8b753f67079819a7614923939472", + "position": { + "x": 896, + "y": -400 + }, + "size": { + "width": 96, + "height": 128 + } + }, + { + "id": "72c87c65-b34b-480f-8cde-cd97c0914014", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 744, + "y": -688 + }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "position": { + "x": 320, + "y": -248 + }, + "size": { + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", + "port": "outlabel" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 400, - "y": -168 - } - ] + "block": "527c9113-e440-454b-b427-182b646c10f5", + "port": "inlabel" + } }, { "source": { - "block": "e80cc244-1751-4524-9f77-734a36b24a88", - "port": "3d584b0a-29eb-47af-8c43-c0822282ef05" + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, "target": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "b652825e-10ba-47cc-9832-e39d73586234", + "port": "inlabel" } }, { "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "port": "outlabel" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { "source": { - "block": "0ef44beb-f4b1-484c-b15a-dc4431241aee", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "port": "outlabel" }, "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } - } - ] - } - } - }, - "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a": { - "package": { - "name": "AdderC-1bit", - "version": "0.1", - "description": "AdderC-1bit: Adder of two operands of 1 bit plus the carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 504, - "y": -208 + "target": { + "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "port": "inlabel" } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "a", - "clock": false + "source": { + "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "port": "outlabel" }, - "position": { - "x": 136, - "y": -192 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 272, - "y": -192 + "target": { + "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "port": "inlabel" } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "c" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 1112, - "y": -176 + "target": { + "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", + "port": "inlabel" } }, { - "id": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 504, - "y": -144 + "target": { + "block": "73a0a48e-d345-4eda-8603-782e9865d928", + "port": "inlabel" } }, { - "id": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "type": "basic.input", - "data": { - "name": "b", - "clock": false + "source": { + "block": "3c8597e6-ca79-494a-9a53-04c284205216", + "port": "outlabel" }, - "position": { - "x": 136, - "y": -120 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "65936289-69ce-4e26-be4e-44f8a3706934", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "source": { + "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", + "port": "outlabel" }, - "position": { - "x": 272, - "y": -120 + "target": { + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" + "source": { + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 648, - "y": -96 + "target": { + "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", + "port": "inlabel" } }, { - "id": "5e915366-608a-431a-bf68-8c64fb4c302c", - "type": "basic.input", - "data": { - "name": "ci", - "clock": false - }, - "position": { - "x": 136, - "y": -40 - } - }, - { - "id": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": -40 - } - }, - { - "id": "79149d67-753e-414e-ba2a-49ba4edfe523", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 480, - "y": 24 - } - }, - { - "id": "c7d2d573-b901-420e-a923-6832e5b18e34", - "type": "basic.output", - "data": { - "name": "s" + "source": { + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, - "position": { - "x": 992, - "y": 56 - } - }, - { - "id": "edf4525b-edd8-40fa-b784-631b102fb907", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b" + "target": { + "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", + "port": "inlabel" }, - "position": { - "x": 480, - "y": 88 - } + "vertices": [ + { + "x": -24, + "y": -696 + } + ] }, { - "id": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "ci", - "oldBlockColor": "fuchsia" + "source": { + "block": "05fb13c5-879a-422f-84a8-56d1db8816da", + "port": "outlabel" }, - "position": { - "x": 648, - "y": 120 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" } }, { - "id": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 648, - "y": 40 + "source": { + "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 832, - "y": 56 + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { - "id": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 808, - "y": -80 + "source": { + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" } }, { - "id": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 632, - "y": -192 + "source": { + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" } }, - { - "id": "dd3259d5-99f6-47f2-881c-4e969e324444", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 960, - "y": -176 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f2c3e9af-37a6-4815-9413-c437d2471b1f", - "port": "inlabel" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } }, { "source": { - "block": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba", - "port": "out" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "65936289-69ce-4e26-be4e-44f8a3706934", - "port": "inlabel" - } + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 824, + "y": -424 + } + ] }, { "source": { - "block": "5e915366-608a-431a-bf68-8c64fb4c302c", + "block": "d192d0af-e7be-4be6-925a-50227d80784c", "port": "out" }, "target": { - "block": "9fca1dd5-3d6c-4321-a1cf-fd35336e41ea", - "port": "inlabel" - } + "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "79149d67-753e-414e-ba2a-49ba4edfe523", - "port": "outlabel" + "block": "c2d36218-be99-4dd1-bf69-7690c667255b", + "port": "out" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "57e59301-2919-4f06-ba95-54ce5d99d774", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 }, { "source": { - "block": "edf4525b-edd8-40fa-b784-631b102fb907", - "port": "outlabel" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" }, "target": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", + "port": "in" + }, + "size": 4 }, { "source": { - "block": "35a4f7cc-d7ef-4653-af75-fe112a5f5151", - "port": "outlabel" + "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + }, + "vertices": [ + { + "x": 728, + "y": -552 + } + ] }, { "source": { - "block": "6b7a0fc7-9eeb-4894-98fd-e0122d08cdf0", - "port": "outlabel" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" } }, { "source": { - "block": "b28215b2-e375-43cd-96b4-ed5b60418dc6", - "port": "outlabel" + "block": "72c87c65-b34b-480f-8cde-cd97c0914014", + "port": "c7d2d573-b901-420e-a923-6832e5b18e34" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "block": "11342001-e6e0-443b-af87-0e5d7ada0227", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } }, { "source": { - "block": "cdbf1806-fde2-4763-aeae-cd26f3db2a86", - "port": "outlabel" + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" }, "target": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "6756cb54-aa93-40af-a5f3-41ef2b2edec9", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "c7d2d573-b901-420e-a923-6832e5b18e34", - "port": "in" - } - }, - { - "source": { - "block": "687d4abf-9ce2-408a-8010-c00e2cec2d44", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "f7053b6b-9812-48df-9212-cb8dc49d44cd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } - }, - { - "source": { - "block": "d77ee777-f5ad-4f89-832b-e1f95f0cf9db", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - }, - { - "source": { - "block": "dd3259d5-99f6-47f2-881c-4e969e324444", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "port": "5e915366-608a-431a-bf68-8c64fb4c302c" } } ] } } }, - "d1240143e1ff7afe57f0f11565da980612b2bb76": { + "c3c498191b14e9288a85fa2871b3966665f75475": { "package": { - "name": "XOR2", - "version": "1.0.2", - "description": "XOR gate: two bits input xor gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22193.047%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20189.047H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294l92.317-.394c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.62h99.605M4.883%20145.497h100.981M298.57%2099.219h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20x=%22129.011%22%20y=%22115.285%22%20font-size=%2258.24%22%20font-weight=%22400%22%20style=%22line-height:125%25%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%20transform=%22translate(0%20.329)%22%3E%3Ctspan%20x=%22129.011%22%20y=%22115.285%22%20font-weight=%22700%22%3EXOR%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M54.321%20188.368s30.345-42.538%2031.086-94.03c.742-51.49-31.821-90.294-31.821-90.294%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "name": "AdderC-8bits", + "version": "0.1", + "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618560481898 }, "design": { "graph": { "blocks": [ { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", + "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "deeppink" }, "position": { - "x": 120, - "y": 48 + "x": -64, + "y": -648 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", + "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "type": "basic.input", "data": { - "name": "" + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, "position": { - "x": 560, - "y": 72 + "x": -408, + "y": -584 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", + "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "a0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "oldBlockColor": "deeppink", + "blockColor": "deeppink" }, "position": { - "x": 120, - "y": 104 + "x": -64, + "y": -568 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", "data": { - "code": "//-- XOR gate\n//-- Verilog implementation\n\nassign c = a ^ b;\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "name": "c" }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 272, - "height": 112 + "x": 832, + "y": -480 } - } - ], - "wires": [ + }, { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "type": "basic.outputLabel", + "data": { + "name": "a1", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "position": { + "x": 248, + "y": -456 } }, { - "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "type": "basic.inputLabel", + "data": { + "name": "b1", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "position": { + "x": -80, + "y": -448 } }, { - "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "type": "basic.input", + "data": { + "name": "", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" - } - } - ] - } - } - }, - "873425949b2a80f1a7f66f320796bcd068a59889": { - "package": { - "name": "OR2", - "version": "1.0.2", - "description": "OR2: Two bits input OR gate", - "author": "Jesús Arroyo, Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20height=%22192.718%22%20width=%22383.697%22%20version=%221%22%3E%3Cpath%20d=%22M175.56%20188.718H84.527s30.345-42.538%2031.086-94.03c.743-51.49-31.821-90.294-31.821-90.294L176.109%204c46.445%201.948%20103.899%2053.44%20123.047%2093.678-32.601%2067.503-92.158%2089.79-123.596%2091.04z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2047.292h99.605M4.883%20145.168h100.981M298.57%2098.89h81.07%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20font-weight=%22400%22%20font-size=%2266.317%22%20y=%22121.28%22%20x=%22131.572%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20font-weight=%22700%22%20y=%22121.28%22%20x=%22131.572%22%3EOR%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + "position": { + "x": -400, + "y": -392 + } + }, { - "id": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "type": "basic.input", + "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "type": "basic.inputLabel", "data": { - "name": "" + "name": "b0", + "range": "[3:0]", + "pins": [ + { + "index": "3", + "name": "", + "value": "" + }, + { + "index": "2", + "name": "", + "value": "" + }, + { + "index": "1", + "name": "", + "value": "" + }, + { + "index": "0", + "name": "", + "value": "" + } + ], + "virtual": true, + "blockColor": "fuchsia" }, "position": { - "x": 112, - "y": 40 + "x": -80, + "y": -376 } }, { - "id": "664caf9e-5f40-4df4-800a-b626af702e62", - "type": "basic.output", + "id": "383985cb-fd11-48ff-972a-cee8b631bd65", + "type": "basic.outputLabel", "data": { - "name": "" + "name": "b1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": 608, - "y": 72 + "x": 248, + "y": -376 } }, { - "id": "97b51945-d716-4b6c-9db9-970d08541249", - "type": "basic.input", + "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "type": "basic.output", "data": { - "name": "" + "name": "s", + "range": "[7:0]", + "size": 8 }, "position": { - "x": 112, - "y": 96 + "x": 840, + "y": -336 } }, { - "id": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "type": "basic.code", + "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "type": "basic.outputLabel", "data": { - "code": "//-- OR Gate\n//-- Verilog implementation\n\nassign c = a | b;\n\n", - "params": [], - "ports": { - "in": [ - { - "name": "a" - }, - { - "name": "b" - } - ], - "out": [ - { - "name": "c" - } - ] - } + "name": "a0", + "range": "[3:0]", + "blockColor": "deeppink", + "size": 4 }, "position": { - "x": 256, - "y": 48 - }, - "size": { - "width": 312, - "height": 104 + "x": 120, + "y": -304 } - } - ], - "wires": [ + }, { - "source": { - "block": "18c2ebc7-5152-439c-9b3f-851c59bac834", - "port": "out" + "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "type": "basic.outputLabel", + "data": { + "name": "b0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "a" + "position": { + "x": 120, + "y": -232 } }, { - "source": { - "block": "97b51945-d716-4b6c-9db9-970d08541249", - "port": "out" + "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "type": "basic.input", + "data": { + "name": "ci", + "clock": false }, - "target": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "b" + "position": { + "x": -392, + "y": -168 } }, { - "source": { - "block": "00925b04-5004-4307-a737-fa4e97c8b6ab", - "port": "c" + "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -248, + "y": -392 }, - "target": { - "block": "664caf9e-5f40-4df4-800a-b626af702e62", - "port": "in" + "size": { + "width": 96, + "height": 64 } - } - ] - } - } - }, - "d30ca9ee4f35f6cb76d5e5701447fc2b739bc640": { - "package": { - "name": "bit-0", - "version": "0.2", - "description": "Constant bit 0", - "author": "Jesus Arroyo", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22125.776%22%20height=%22197.727%22%20viewBox=%220%200%20110.54641%20173.78236%22%3E%3Cpath%20d=%22M69.664%20107.353l13.494%2029.374L70.719%20168.5l13.788%204.283m-42.761-62.916S38.148%20136.825%2033.22%20139C28.298%20141.18%201%20161.403%201%20161.403l8.729%2010.636%22%20fill=%22none%22%20stroke=%22green%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20style=%22line-height:0%25%22%3E%3Cpath%20d=%22M65.536%2024.562q-9.493%200-15.876%208.251-6.303%208.156-8.855%2023.604-2.553%2015.448%201.037%2023.7%203.59%208.155%2013.084%208.155%209.334%200%2015.636-8.155%206.383-8.252%208.936-23.7%202.553-15.448-1.037-23.604-3.59-8.251-12.925-8.251zm4.07-24.564q23.056%200%2033.507%2014.969%2010.53%2014.968%206.143%2041.45-4.388%2026.482-19.865%2041.45-15.478%2014.968-38.534%2014.968-23.136%200-33.667-14.968Q6.659%2082.9%2011.047%2056.417q4.387-26.482%2019.865-41.45Q46.469-.002%2069.605-.002z%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold%20Italic'%22%20font-style=%22italic%22%20font-weight=%22700%22%20font-size=%22179.184%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "type": "basic.output", - "data": { - "name": "" + "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "position": { + "x": -240, + "y": -584 }, + "size": { + "width": 96, + "height": 64 + } + }, + { + "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": 456, - "y": 120 + "x": 688, + "y": -336 + }, + "size": { + "width": 96, + "height": 64 } }, { - "id": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "type": "basic.code", - "data": { - "code": "//-- Constant bit-0\nassign q = 1'b0;\n\n", - "params": [], - "ports": { - "in": [], - "out": [ - { - "name": "q" - } - ] - } + "id": "840ba8a1-693f-4531-a947-adcaeac4e854", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "position": { + "x": 320, + "y": -248 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", "position": { - "x": 168, - "y": 112 + "x": 464, + "y": -392 }, "size": { - "width": 248, - "height": 80 + "width": 96, + "height": 96 } } ], "wires": [ { "source": { - "block": "61331ec5-2c56-4cdd-b607-e63b1502fa65", - "port": "q" + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "3d584b0a-29eb-47af-8c43-c0822282ef05", - "port": "in" - } - } - ] - } - } - }, - "afb28fd5426aea14477d11cbe30a290679f789f8": { - "package": { - "name": "Bus8-Join-half", - "version": "0.1", - "description": "Bus8-Join-half: Join the two same halves into an 8-bits Bus", + "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 + }, + "target": { + "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 + }, + "target": { + "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", + "port": "inlabel" + }, + "size": 4 + }, + { + "source": { + "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", + "port": "outlabel" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", + "port": "outlabel" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "vertices": [ + { + "x": 272, + "y": -256 + } + ], + "size": 4 + }, + { + "source": { + "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "port": "outlabel" + }, + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "d192d0af-e7be-4be6-925a-50227d80784c", + "size": 4 + }, + "size": 4 + }, + { + "source": { + "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "port": "outlabel" + }, + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "c2d36218-be99-4dd1-bf69-7690c667255b", + "size": 4 + }, + "vertices": [ + { + "x": 384, + "y": -400 + } + ], + "size": 4 + }, + { + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "port": "out" + }, + "target": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" + } + }, + { + "source": { + "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "port": "out" + }, + "target": { + "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "3867504b-f331-4e0e-b923-acc86cb4255c", + "port": "out" + }, + "target": { + "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + }, + "size": 8 + }, + { + "source": { + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" + }, + "target": { + "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "port": "in" + }, + "size": 8 + }, + { + "source": { + "block": "840ba8a1-693f-4531-a947-adcaeac4e854", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + }, + "size": 4 + }, + { + "source": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + }, + "target": { + "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + }, + "size": 4 + }, + { + "source": { + "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + }, + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + }, + "vertices": [ + { + "x": 624, + "y": -392 + } + ] + } + ] + } + } + }, + "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "package": { + "name": "Bus16-Join-half", + "version": "0.1", + "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" }, @@ -8206,44 +8834,44 @@ "graph": { "blocks": [ { - "id": "a1770adf-e143-4506-9d87-3cb9c870f534", + "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", "type": "basic.input", "data": { "name": "1", - "range": "[3:0]", + "range": "[7:0]", "clock": false, - "size": 4 + "size": 8 }, "position": { - "x": 128, + "x": 120, "y": 168 } }, { - "id": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", "type": "basic.output", "data": { "name": "", - "range": "[7:0]", - "size": 8 + "range": "[15:0]", + "size": 16 }, "position": { - "x": 640, + "x": 632, "y": 200 } }, { - "id": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", "type": "basic.input", "data": { "name": "0", - "range": "[3:0]", + "range": "[7:0]", "clock": false, - "size": 4 + "size": 8 }, "position": { - "x": 128, - "y": 224 + "x": 120, + "y": 264 } }, { @@ -8256,20 +8884,20 @@ "in": [ { "name": "i1", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 }, { "name": "i0", - "range": "[3:0]", - "size": 4 + "range": "[7:0]", + "size": 8 } ], "out": [ { "name": "o", - "range": "[7:0]", - "size": 8 + "range": "[15:0]", + "size": 16 } ] } @@ -8291,1069 +8919,1000 @@ "port": "o" }, "target": { - "block": "1269698e-e555-4fcb-a613-cb4c7ff2e598", + "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", "port": "in" }, - "size": 8 + "size": 16 }, { "source": { - "block": "a1770adf-e143-4506-9d87-3cb9c870f534", + "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", "port": "out" }, "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" + "port": "i0" }, - "size": 4 + "size": 8 }, { "source": { - "block": "843164ff-f7d8-48b9-bf59-1e0d1135c81f", + "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", "port": "out" }, "target": { "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "port": "i1" }, - "size": 4 + "size": 8 } ] } } }, - "a1ce303b8ce47a06371ea4641c81460f34a1cca9": { + "0788ea6614e4f073f6ed9a49665243d6d489ba46": { "package": { - "name": "AdderC-4bits", - "version": "0.1", - "description": "AdderC-4bits: Adder of two operands of 4 bits and Carry in", + "name": "16-Sys-reg-rst", + "version": "0.8", + "description": "16-Sys-reg-rst: 16 bits system register with reset. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 + "image": "%3Csvg%20width=%22252.294%22%20height=%22220.368%22%20viewBox=%220%200%2066.75283%2058.305748%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M25.682%2041.088L39.29%2057.76l-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M18.298%2033.024L9.066%2013.41l-6.45%203.724-2.07-3.583%2020.905-12.07%202.069%203.584-6.092%203.517%2012.03%2018.223s5.399-2.025%208.535.74c3.137%202.766%202.52%204.92%202.887%204.773L17.192%2045.956s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M42.022%2040.152l13.607%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.638%2032.088l-9.232-19.613-6.451%203.724-2.07-3.583L37.792.546%2039.86%204.13l-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.137%202.766%202.52%204.92%202.887%204.772L33.532%2045.02s-2.848-3.695-2.16-6.795c.688-3.1%203.266-6.137%203.266-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-38.356%20-17.732)%22%3E%3Crect%20width=%2224.412%22%20height=%2213.185%22%20x=%2280.3%22%20y=%2221.375%22%20ry=%222.247%22%20fill=%22#fff%22%20stroke=%22#000%22%20stroke-width=%22.794%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:1.25%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22400%22%20font-size=%2210.583%22%20font-family=%22sans-serif%22%20fill=%22#00f%22%20stroke-width=%22.265%22%3E%3Ctspan%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20x=%2282.245%22%20y=%2230.943%22%20font-weight=%22700%22%3ESys%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E", + "otid": 1618509859237 }, "design": { "graph": { "blocks": [ { - "id": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "type": "basic.inputLabel", - "data": { - "blockColor": "deeppink", - "name": "a3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" - }, - "position": { - "x": 8, - "y": -744 - } - }, - { - "id": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "type": "basic.outputLabel", + "id": "34c6aff6-7aca-4cc1-8d79-d6143d2f6937", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a3", - "oldBlockColor": "deeppink" + "name": "nc" }, "position": { - "x": 576, - "y": -736 + "x": 920, + "y": -24 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "id": "83ce9e72-711d-44f2-bbf5-b01c201a652a", "type": "basic.output", "data": { - "name": "c" + "name": "nc" }, "position": { "x": 920, - "y": -696 + "y": 56 } }, { - "id": "73a0a48e-d345-4eda-8603-782e9865d928", - "type": "basic.inputLabel", + "id": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "type": "basic.input", "data": { - "blockColor": "deeppink", - "name": "a2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "", + "clock": true }, "position": { - "x": 8, - "y": -688 + "x": 368, + "y": 64 } }, { - "id": "05fb13c5-879a-422f-84a8-56d1db8816da", - "type": "basic.outputLabel", + "id": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b3", - "oldBlockColor": "fuchsia" + "name": "rst", + "clock": false }, "position": { - "x": 576, - "y": -672 + "x": 376, + "y": 200 } }, { - "id": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", - "type": "basic.inputLabel", + "id": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "deeppink" + "name": "", + "range": "[15:0]", + "size": 16 }, "position": { - "x": 8, - "y": -632 + "x": 920, + "y": 200 } }, { - "id": "c2d36218-be99-4dd1-bf69-7690c667255b", + "id": "c48a2779-52ed-4dde-8f95-e8ce67397de8", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", + "range": "[15:0]", "clock": false, - "size": 4 + "size": 16 }, "position": { - "x": -312, - "y": -632 + "x": 376, + "y": 336 } }, { - "id": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "type": "basic.outputLabel", + "id": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "type": "basic.constant", "data": { - "blockColor": "deeppink", - "name": "a2", - "oldBlockColor": "deeppink" + "name": "", + "value": "0", + "local": false }, "position": { - "x": 456, - "y": -584 + "x": 656, + "y": -80 } }, { - "id": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", - "type": "basic.inputLabel", + "id": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "type": "basic.code", "data": { - "blockColor": "deeppink", - "name": "a0", - "pins": [ + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "rst" + }, + { + "name": "d", + "range": "[15:0]", + "size": 16 + } + ], + "out": [ + { + "name": "q", + "range": "[15:0]", + "size": 16 + } + ] + }, + "params": [ { - "index": "0", - "name": "NULL", - "value": "NULL" + "name": "INI" } ], - "virtual": true, - "oldBlockColor": "fuchsia" + "code": "//-- Generic System register\n//-- with reset\n//-- Number of bits\nlocalparam N = 16;\n\n//-- Initial value\nreg [N-1:0] qi = INI;\n\nalways @(posedge clk)\nbegin\n\n //-- Reset: Capture the initial\n //-- value\n if (rst == 1'b1)\n qi <= INI;\n \n //-- No reset: Capture the input\n else\n qi <= d;\nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 8, - "y": -576 + "x": 528, + "y": 32 + }, + "size": { + "width": 344, + "height": 400 + } + } + ], + "wires": [ + { + "source": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "q" + }, + "target": { + "block": "7995c7b0-4a39-4a19-aaa4-68f4e469912f", + "port": "in" + }, + "vertices": [], + "size": 16 + }, + { + "source": { + "block": "d1e52cbe-a82e-4bea-9ed0-e970eec3e43e", + "port": "constant-out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "INI" + }, + "vertices": [] + }, + { + "source": { + "block": "892d93f1-9c4c-46c1-82c7-ff9702a5725a", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "rst" } }, { - "id": "3c8597e6-ca79-494a-9a53-04c284205216", - "type": "basic.outputLabel", + "source": { + "block": "c48a2779-52ed-4dde-8f95-e8ce67397de8", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "d" + }, + "size": 16 + }, + { + "source": { + "block": "0ae5a502-ee21-47ad-bacb-405a35a87a91", + "port": "out" + }, + "target": { + "block": "2cc2ff9d-ebfc-43e2-83d7-5c4a6d8c77e6", + "port": "clk" + } + } + ] + } + } + }, + "0705a6a13435ea79daf5779a2a0f076bd71f0a14": { + "package": { + "name": "Sync-x01-verilog", + "version": "0.3", + "description": "Sync-x01: 1-bit input with the system clock domain (Verilog implementation)", + "author": "Juan Gonzalez-González (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" + }, + "design": { + "graph": { + "blocks": [ + { + "id": "04b7a776-03f4-4de2-a09f-9f3cae6dded2", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b2", - "oldBlockColor": "fuchsia" + "name": "nc" }, "position": { - "x": 456, - "y": -528 + "x": 384, + "y": -80 } }, { - "id": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "type": "basic.inputLabel", + "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "type": "basic.input", "data": { - "blockColor": "fuchsia", - "name": "b3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "name": "", + "clock": true }, "position": { - "x": -8, - "y": -448 + "x": -136, + "y": -16 } }, { - "id": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", - "type": "basic.outputLabel", + "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "type": "basic.output", "data": { - "blockColor": "deeppink", - "name": "a1", - "oldBlockColor": "fuchsia" + "name": "" }, "position": { - "x": 328, - "y": -440 + "x": 384, + "y": 56 } }, { - "id": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" + "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "type": "basic.input", + "data": { + "name": "", + "clock": false }, "position": { - "x": -8, - "y": -384 + "x": -136, + "y": 128 } }, { - "id": "d192d0af-e7be-4be6-925a-50227d80784c", + "id": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "type": "basic.code", + "data": { + "code": "//-- Two D flip-flops\n//-- connected in cascade\n\nreg q1 = 0;\nreg q2 = 0;\n\nalways @(posedge clk) \nbegin\n //-- First D Flip-Flop\n q1 <= d;\n \n //-- Secondo D Flip-flop\n q2 <= q1;\nend\n\n//-- Assign the output\nassign q = q2;", + "params": [], + "ports": { + "in": [ + { + "name": "clk" + }, + { + "name": "d" + } + ], + "out": [ + { + "name": "q" + } + ] + } + }, + "position": { + "x": 32, + "y": -56 + }, + "size": { + "width": 296, + "height": 288 + } + } + ], + "wires": [ + { + "source": { + "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "clk" + } + }, + { + "source": { + "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "port": "out" + }, + "target": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "d" + } + }, + { + "source": { + "block": "cf6fe46f-cd0d-4a77-be7a-dd6aa92801fa", + "port": "q" + }, + "target": { + "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", + "port": "in" + } + } + ] + } + } + }, + "4b13954984c2a5ed0f58b0fb18266e70ad1b8efd": { + "package": { + "name": "display16-8", + "version": "0.3", + "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", + "otid": 1636642572055 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", "type": "basic.input", "data": { "name": "", - "range": "[3:0]", - "clock": false, - "size": 4 + "clock": true }, "position": { - "x": -312, - "y": -384 + "x": 216, + "y": -40 } }, { - "id": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "type": "basic.outputLabel", + "id": "0a772657-8018-424d-8f04-75d3ffff3692", + "type": "basic.inputLabel", "data": { - "blockColor": "fuchsia", - "name": "b1" + "blockColor": "yellow", + "name": "clk" }, "position": { - "x": 328, - "y": -376 + "x": 368, + "y": -40 } }, { - "id": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "type": "basic.output", + "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "type": "basic.input", "data": { - "name": "s", - "range": "[3:0]", - "size": 4 + "name": "data", + "range": "[15:0]", + "clock": false, + "size": 16 }, "position": { - "x": 1064, - "y": -368 + "x": 200, + "y": 128 } }, { - "id": "527c9113-e440-454b-b427-182b646c10f5", + "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", "type": "basic.inputLabel", "data": { + "name": "data", + "range": "[15:0]", "blockColor": "fuchsia", - "name": "b1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true + "size": 16 }, "position": { - "x": -16, - "y": -320 + "x": 344, + "y": 128 } }, { - "id": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "id": "514effa0-6d57-4281-b479-22d05798dceb", "type": "basic.outputLabel", "data": { - "blockColor": "deeppink", - "name": "a0", - "oldBlockColor": "fuchsia" + "name": "data", + "range": "[15:0]", + "blockColor": "fuchsia", + "size": 16 }, "position": { - "x": 184, - "y": -296 + "x": 560, + "y": 128 } }, { - "id": "b652825e-10ba-47cc-9832-e39d73586234", - "type": "basic.inputLabel", + "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "type": "basic.output", "data": { - "blockColor": "fuchsia", - "name": "b0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, + "name": "LED", + "range": "[7:0]", + "size": 8 + }, + "position": { + "x": 1136, + "y": 144 + } + }, + { + "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "type": "basic.outputLabel", + "data": { + "blockColor": "yellow", + "name": "clk", "oldBlockColor": "fuchsia" }, "position": { - "x": -32, - "y": -264 + "x": 600, + "y": 240 } }, { - "id": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", + "id": "38edd85d-359d-43ac-a794-056763ee2628", + "type": "basic.output", + "data": { + "name": "byte" + }, + "position": { + "x": 1208, + "y": 296 + } + }, + { + "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "type": "basic.outputLabel", "data": { "blockColor": "fuchsia", - "name": "b0", + "name": "ticsel", "oldBlockColor": "fuchsia" }, "position": { - "x": 184, - "y": -232 + "x": 600, + "y": 312 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "ci", + "name": "sel", "clock": false }, "position": { - "x": -296, - "y": -168 + "x": 200, + "y": 320 } }, { - "id": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "ticsel", + "oldBlockColor": "fuchsia" + }, "position": { - "x": 464, - "y": -392 + "x": 344, + "y": 320 + } + }, + { + "id": "31636314-c790-4631-b8c2-1dad55572202", + "type": "basic.output", + "data": { + "name": "b0" }, - "size": { - "width": 96, - "height": 96 + "position": { + "x": 1216, + "y": 376 } }, { - "id": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 608, - "y": -544 + "x": 1064, + "y": 376 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": -168, - "y": -416 + "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", + "type": "basic.info", + "data": { + "info": "Byte 0 \n(least significant) ", + "readonly": true }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "57e59301-2919-4f06-ba95-54ce5d99d774", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", "position": { - "x": -152, - "y": -664 + "x": 1344, + "y": 376 }, "size": { - "width": 96, - "height": 128 + "width": 184, + "height": 56 } }, { - "id": "11342001-e6e0-443b-af87-0e5d7ada0227", - "type": "84f0a15761ee8b753f67079819a7614923939472", + "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "type": "d1a52ec25aee5e4823102a32325600666fe99e12", "position": { - "x": 896, - "y": -400 + "x": 952, + "y": 128 }, "size": { "width": 96, - "height": 128 + "height": 96 } }, { - "id": "72c87c65-b34b-480f-8cde-cd97c0914014", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "ba73010a-9cb6-48fe-a664-e34e25778add", + "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", "position": { - "x": 744, - "y": -688 + "x": 720, + "y": 128 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "type": "ad119ba8cc72b122da03cd3d251ffce5e8dc6e9a", + "id": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "type": "b7f7136a87c607769a64233fd99bc12818a05746", "position": { - "x": 320, - "y": -248 + "x": 744, + "y": 296 }, "size": { "width": 96, - "height": 96 + "height": 64 } } ], "wires": [ { "source": { - "block": "038a8cb8-35b8-424a-9d14-c320cfcddccf", - "port": "outlabel" - }, - "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "527c9113-e440-454b-b427-182b646c10f5", - "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, "target": { - "block": "b652825e-10ba-47cc-9832-e39d73586234", + "block": "0a772657-8018-424d-8f04-75d3ffff3692", "port": "inlabel" - } - }, - { - "source": { - "block": "7e5351cc-ea73-4bb2-9dda-0390f005b90b", - "port": "outlabel" }, - "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "vertices": [] }, { "source": { - "block": "f8dceaf6-6020-49e5-b775-ed4821fbd5bd", + "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", "port": "outlabel" }, "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" } }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" + "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", + "port": "out" }, "target": { - "block": "d7d5e8c8-78dd-41a8-aedf-1051b89bfb77", + "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", "port": "inlabel" } }, { "source": { - "block": "c5dce3e4-5ecc-4fc9-bbf6-7c1adfa1c7ff", + "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", "port": "outlabel" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" } }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" + "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "port": "out", + "size": 16 }, "target": { - "block": "a30f87da-7077-4ad6-92dd-adbfdd1bed45", + "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", "port": "inlabel" - } - }, - { - "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "target": { - "block": "fb8bbeb1-5c60-4629-bc13-231545818d0b", - "port": "inlabel" - } + "size": 16 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "33072210-9ba0-4659-8339-95952b939e6e" + "block": "514effa0-6d57-4281-b479-22d05798dceb", + "port": "outlabel" }, "target": { - "block": "73a0a48e-d345-4eda-8603-782e9865d928", - "port": "inlabel" - } + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", + "size": 16 + }, + "size": 16 }, { "source": { - "block": "3c8597e6-ca79-494a-9a53-04c284205216", - "port": "outlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" - } + "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "port": "in" + }, + "size": 8 }, { "source": { - "block": "ed7a30bc-17fc-444e-89e5-aa9f83b32e86", - "port": "outlabel" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "31636314-c790-4631-b8c2-1dad55572202", + "port": "in" } }, { "source": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" }, "target": { - "block": "ee992ca6-d586-4901-aaa3-a17d94ddac84", - "port": "inlabel" - } + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "520455a3-592c-4fd0-ade9-62d366c88919" + }, + "size": 8 }, { "source": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + "block": "ba73010a-9cb6-48fe-a664-e34e25778add", + "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" }, "target": { - "block": "1c9b3962-5793-4e6f-98d4-9ca2113d0823", - "port": "inlabel" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "e045f285-627f-42f7-b073-faa36ef6d420" }, - "vertices": [ - { - "x": -24, - "y": -696 - } - ] + "size": 8 }, { "source": { - "block": "05fb13c5-879a-422f-84a8-56d1db8816da", - "port": "outlabel" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c25ede2a-5b9b-43af-bd6b-0ac539a135ba" + "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "161a3e27-de9b-4674-b990-c1e8314a29f3", - "port": "outlabel" + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", + "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + "block": "38edd85d-359d-43ac-a794-056763ee2628", + "port": "in" } }, { "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", + "block": "67652299-cdb5-48c6-aad0-ac13580ba91a", "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" }, "target": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" } - }, + } + ] + } + } + }, + "d1a52ec25aee5e4823102a32325600666fe99e12": { + "package": { + "name": "8-bits-Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (8-bit channels)", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 + }, + "design": { + "graph": { + "blocks": [ { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "type": "basic.outputLabel", + "data": { + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + "position": { + "x": 768, + "y": 192 } }, { - "source": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "type": "basic.inputLabel", + "data": { + "name": "A1", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + "position": { + "x": 552, + "y": 208 } }, { - "source": { - "block": "dc4b3359-4017-40dd-9c0b-a1afde43f9e1", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" - } - }, - { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" - }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 824, - "y": -424 - } - ] - }, - { - "source": { - "block": "d192d0af-e7be-4be6-925a-50227d80784c", - "port": "out" - }, - "target": { - "block": "b21b50b9-8a60-4df4-9c1a-8d3a287fae68", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "c2d36218-be99-4dd1-bf69-7690c667255b", - "port": "out" - }, - "target": { - "block": "57e59301-2919-4f06-ba95-54ce5d99d774", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + "id": "520455a3-592c-4fd0-ade9-62d366c88919", + "type": "basic.input", + "data": { + "name": "1", + "range": "[7:0]", + "clock": false, + "size": 8 }, - "size": 4 + "position": { + "x": 200, + "y": 264 + } }, { - "source": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42", - "port": "in" + "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "type": "basic.outputLabel", + "data": { + "name": "B1", + "range": "[3:0]", + "oldBlockColor": "fuchsia", + "blockColor": "turquoise", + "size": 4 }, - "size": 4 + "position": { + "x": 768, + "y": 264 + } }, { - "source": { - "block": "887d569f-183e-4cbe-9b43-51d1da7196cd", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "type": "basic.inputLabel", + "data": { + "name": "A0", + "range": "[3:0]", + "blockColor": "fuchsia", + "size": 4 }, - "vertices": [ - { - "x": 728, - "y": -552 - } - ] + "position": { + "x": 544, + "y": 280 + } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "position": { + "x": 808, + "y": 416 } }, { - "source": { - "block": "72c87c65-b34b-480f-8cde-cd97c0914014", - "port": "c7d2d573-b901-420e-a923-6832e5b18e34" + "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", + "type": "basic.output", + "data": { + "name": "", + "range": "[7:0]", + "size": 8 }, - "target": { - "block": "11342001-e6e0-443b-af87-0e5d7ada0227", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" + "position": { + "x": 1336, + "y": 432 } }, { - "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "type": "basic.inputLabel", + "data": { + "name": "B1", + "range": "[3:0]", + "blockColor": "lightseagreen", + "size": 4 }, - "target": { - "block": "db8ddf46-4d59-46ec-90bc-2ae7ccc59ce0", - "port": "5e915366-608a-431a-bf68-8c64fb4c302c" + "position": { + "x": 584, + "y": 528 } - } - ] - } - } - }, - "c3c498191b14e9288a85fa2871b3966665f75475": { - "package": { - "name": "AdderC-8bits", - "version": "0.1", - "description": "AdderC-8bits: Adder of two operands of 8 bits and Carry in", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22208.285%22%20height=%22208.61%22%20viewBox=%220%200%20195.2669%20195.57218%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg%20style=%22line-height:125%25%22%3E%3Cpath%20d=%22M115.76%200v79.813h79.508v35.946h-79.509v79.813H79.51V115.76H0V79.813h79.508V0z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20fill=%22#00f%22%20font-size=%22311.941%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%224.441%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618560481898 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "type": "basic.inputLabel", + "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "type": "basic.outputLabel", "data": { - "name": "a1", + "name": "A0", "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "deeppink" + "blockColor": "fuchsia", + "size": 4 }, "position": { - "x": -64, - "y": -648 + "x": 808, + "y": 552 } }, { - "id": "4bf17d89-89b8-4524-800a-2d15f9bbb111", + "id": "e045f285-627f-42f7-b073-faa36ef6d420", "type": "basic.input", "data": { - "name": "", + "name": "0", "range": "[7:0]", "clock": false, "size": 8 }, "position": { - "x": -408, - "y": -584 + "x": 208, + "y": 592 } }, { - "id": "dc0243cd-75d9-4b07-bc17-150c250121ba", + "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", "type": "basic.inputLabel", "data": { - "name": "a0", + "name": "B0", "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "oldBlockColor": "deeppink", - "blockColor": "deeppink" + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": -64, - "y": -568 + "x": 584, + "y": 608 } }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", + "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "type": "basic.outputLabel", "data": { - "name": "c" + "name": "B0", + "range": "[3:0]", + "blockColor": "turquoise", + "size": 4 }, "position": { - "x": 832, - "y": -480 + "x": 808, + "y": 616 } }, { - "id": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "type": "basic.outputLabel", "data": { - "name": "a1", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 - }, - "position": { - "x": 248, - "y": -456 - } - }, - { - "id": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "type": "basic.inputLabel", - "data": { - "name": "b1", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": -80, - "y": -448 + "x": 808, + "y": 680 } }, { - "id": "3867504b-f331-4e0e-b923-acc86cb4255c", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { - "name": "", - "range": "[7:0]", - "clock": false, - "size": 8 + "name": "sel", + "clock": false }, "position": { - "x": -400, - "y": -392 + "x": 392, + "y": 768 } }, { - "id": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "name": "b0", - "range": "[3:0]", - "pins": [ - { - "index": "3", - "name": "", - "value": "" - }, - { - "index": "2", - "name": "", - "value": "" - }, - { - "index": "1", - "name": "", - "value": "" - }, - { - "index": "0", - "name": "", - "value": "" - } - ], - "virtual": true, - "blockColor": "fuchsia" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": -80, - "y": -376 + "x": 552, + "y": 768 } }, { - "id": "383985cb-fd11-48ff-972a-cee8b631bd65", - "type": "basic.outputLabel", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", "data": { - "name": "b1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "info": "Channel B", + "readonly": true }, "position": { - "x": 248, - "y": -376 - } - }, - { - "id": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", - "type": "basic.output", - "data": { - "name": "s", - "range": "[7:0]", - "size": 8 + "x": 424, + "y": 512 }, - "position": { - "x": 840, - "y": -336 + "size": { + "width": 144, + "height": 32 } }, { - "id": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "type": "basic.outputLabel", - "data": { - "name": "a0", - "range": "[3:0]", - "blockColor": "deeppink", - "size": 4 - }, + "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 120, - "y": -304 - } - }, - { - "id": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "type": "basic.outputLabel", - "data": { - "name": "b0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 + "x": 968, + "y": 568 }, - "position": { - "x": 120, - "y": -232 + "size": { + "width": 96, + "height": 96 } }, { - "id": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "type": "basic.input", + "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", + "type": "basic.info", "data": { - "name": "ci", - "clock": false + "info": "Channel A", + "readonly": true }, "position": { - "x": -392, - "y": -168 - } - }, - { - "id": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": -248, - "y": -392 + "x": 424, + "y": 168 }, "size": { - "width": 96, - "height": 64 + "width": 144, + "height": 32 } }, { - "id": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", + "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "type": "afb28fd5426aea14477d11cbe30a290679f789f8", "position": { - "x": -240, - "y": -584 + "x": 1152, + "y": 432 }, "size": { "width": 96, @@ -9361,11 +9920,11 @@ } }, { - "id": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", + "id": "10dbbb33-fa47-4d9f-8723-170519859684", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 688, - "y": -336 + "x": 376, + "y": 264 }, "size": { "width": 96, @@ -9373,23 +9932,23 @@ } }, { - "id": "840ba8a1-693f-4531-a947-adcaeac4e854", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "9714e6fb-453b-435a-b124-72e5a30ff428", + "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", "position": { - "x": 320, - "y": -248 + "x": 392, + "y": 592 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "type": "a1ce303b8ce47a06371ea4641c81460f34a1cca9", + "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "type": "952eda35358117b68b3f8a2489e9dc86168d0144", "position": { - "x": 464, - "y": -392 + "x": 960, + "y": 248 }, "size": { "width": 96, @@ -9400,1169 +9959,1163 @@ "wires": [ { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "d60cb59e-3e5c-4044-ae1f-3a06f33e83f9", + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "port": "inlabel" - }, - "size": 4 + } }, { "source": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "ba04e310-65e0-4554-ba2b-fbde28690a0b", - "port": "inlabel" - }, - "size": 4 + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 + "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", + "port": "outlabel" }, "target": { - "block": "dc0243cd-75d9-4b07-bc17-150c250121ba", - "port": "inlabel" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 }, + "vertices": [ + { + "x": 928, + "y": 624 + } + ], "size": 4 }, { "source": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 + "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", + "port": "outlabel" }, "target": { - "block": "bc495131-253e-49c9-9cd7-9e843cbe7ce5", - "port": "inlabel" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, "size": 4 }, { "source": { - "block": "53d3821c-4072-438d-a45e-3a5364fdc8bc", - "port": "outlabel" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 + "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", + "port": "inlabel" }, "size": 4 }, { "source": { - "block": "7905afe7-6a82-43d9-811b-45f379a3c0a9", - "port": "outlabel" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", + "size": 4 }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", + "port": "inlabel" }, - "vertices": [ - { - "x": 272, - "y": -256 - } - ], "size": 4 }, { "source": { - "block": "383985cb-fd11-48ff-972a-cee8b631bd65", + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", "port": "outlabel" }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "d192d0af-e7be-4be6-925a-50227d80784c", - "size": 4 - }, - "size": 4 + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + } }, { "source": { - "block": "bd04885a-8a3a-4215-bbf1-c472c10c44f5", - "port": "outlabel" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "c2d36218-be99-4dd1-bf69-7690c667255b", - "size": 4 + "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", + "port": "inlabel" }, - "vertices": [ - { - "x": 384, - "y": -400 - } - ], "size": 4 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "637e64f4-0a6b-4037-9a75-89397e078a58", + "size": 4 }, "target": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", + "port": "inlabel" + }, + "size": 4 }, { "source": { - "block": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86", - "port": "out" + "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", + "port": "outlabel" }, "target": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "1fb72b69-63b6-47c0-a5bc-e31bd2611c86" - } + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "size": 4 + }, + "size": 4 }, { "source": { - "block": "4bf17d89-89b8-4524-800a-2d15f9bbb111", - "port": "out" + "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", + "port": "outlabel" }, "target": { - "block": "d6ce7b9d-d8cf-4cde-85a8-589536fcc3a3", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "size": 4 }, - "size": 8 + "size": 4 }, { "source": { - "block": "3867504b-f331-4e0e-b923-acc86cb4255c", - "port": "out" + "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "d5ab6421-1fc7-4d8d-8124-2cc7e0eb931d", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" }, - "size": 8 + "size": 4 }, { "source": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" }, "target": { - "block": "9daaaf78-5a89-4d4a-a1b2-db1d3af962f1", + "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", "port": "in" }, "size": 8 }, { "source": { - "block": "840ba8a1-693f-4531-a947-adcaeac4e854", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "520455a3-592c-4fd0-ade9-62d366c88919", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" + "block": "10dbbb33-fa47-4d9f-8723-170519859684", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "size": 4 + "size": 8 }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "7c4d05e4-b602-456e-9cf2-9bc6f3a44c42" + "block": "e045f285-627f-42f7-b073-faa36ef6d420", + "port": "out" }, "target": { - "block": "0e0cf23b-5743-4a19-838d-fb46d407ee16", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" + "block": "9714e6fb-453b-435a-b124-72e5a30ff428", + "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" }, - "size": 4 + "size": 8 }, { "source": { - "block": "7a4072f6-7500-4b87-86dc-2c63246b510b", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", + "port": "0c30aa42-915c-42e9-9179-f46349c9400c" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", + "port": "a1770adf-e143-4506-9d87-3cb9c870f534" }, "vertices": [ { - "x": 624, - "y": -392 + "x": 1088, + "y": 360 } - ] + ], + "size": 4 } ] } } }, - "8cc49c9b29485f2cfeab6064d7bb1cf9ced045b1": { + "952eda35358117b68b3f8a2489e9dc86168d0144": { "package": { - "name": "Bus16-Join-half", + "name": "4-bits-Mux-2-1", "version": "0.1", - "description": "Bus16-Join-half: Join the two same halves into an 16-bits Bus", + "description": "2-to-1 Multplexer (4-bit channels)", "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=%22M164.218%2077.643L103.07%2016.705C92.386%206.25%2078.036.461%2063.11.5H.5v26.186l61.698.046c8.012-.043%2015.705%203.133%2021.47%208.81l61.448%2061.315a57.292%2057.292%200%200%200%2039.993%2016.139%2057.292%2057.292%200%200%200-39.993%2016.14L83.668%20190.45c-5.765%205.677-13.458%208.853-21.47%208.81L.5%20199.306v26.186h62.612c14.924.039%2029.463-5.9%2040.204-16.28l60.902-60.863a29.857%2029.857%200%200%201%2021.347-8.81l146.53-.113V86.457H185.571a29.884%2029.884%200%200%201-21.353-8.814z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "type": "basic.input", + "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "type": "basic.outputLabel", "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 + "blockColor": "fuchsia", + "name": "A3", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": 168 + "x": 712, + "y": -72 } }, { - "id": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "type": "basic.output", + "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "type": "basic.outputLabel", "data": { - "name": "", - "range": "[15:0]", - "size": 16 + "blockColor": "turquoise", + "name": "B3", + "oldBlockColor": "turquoise" }, "position": { - "x": 632, - "y": 200 + "x": 712, + "y": 0 } }, { - "id": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "type": "basic.input", + "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "type": "basic.outputLabel", "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 120, - "y": 264 + "x": 712, + "y": 72 } }, { - "id": "16e78204-213e-4833-9096-89d735307ec2", - "type": "basic.code", + "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "type": "basic.outputLabel", "data": { - "code": "assign o = {i1, i0};\n", - "params": [], - "ports": { - "in": [ - { - "name": "i1", - "range": "[7:0]", - "size": 8 - }, - { - "name": "i0", - "range": "[7:0]", - "size": 8 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - } + "blockColor": "fuchsia", + "name": "A2", + "oldBlockColor": "fuchsia" }, "position": { - "x": 296, - "y": 176 - }, - "size": { - "width": 272, - "height": 104 + "x": 712, + "y": 160 } - } - ], - "wires": [ + }, { - "source": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "o" - }, - "target": { - "block": "79c56f9a-597f-491e-b1d1-d321f63303c2", - "port": "in" + "id": "6776605f-93ce-4cae-8606-055bd2415b2d", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 16 + "position": { + "x": 432, + "y": 160 + } }, { - "source": { - "block": "38fdb02d-4323-4a34-9ffe-8385f844b660", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i0" + "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "type": "basic.inputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "size": 8 + "position": { + "x": 440, + "y": 224 + } }, { - "source": { - "block": "5a35cd57-1006-4f6d-b263-5b977e9ef142", - "port": "out" - }, - "target": { - "block": "16e78204-213e-4833-9096-89d735307ec2", - "port": "i1" - }, - "size": 8 - } - ] - } - } - }, - "3324889d602b184a4c2012938d6c0c3749a5c7e9": { - "package": { - "name": "Edges-detector", - "version": "0.2", - "description": "Edges detector. It generates a 1-period pulse (tic) when either a rising edge or a falling edge is detected on the input", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22294.1%22%20height=%22185.316%22%20viewBox=%220%200%2077.813988%2049.031403%22%3E%3Cg%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M13.478%2032.941l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.556.583%202.528%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M12.773%202.492v29.942%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M1.984%2022.683l10.689%2010.453%2010.35-10.453%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3Cg%20fill=%22none%22%20stroke=%22#00f%22%3E%3Cpath%20d=%22M42.248%2032.434l6.026%207.975-5.054%206.03%201.749%201.556m-3.96-15.367l-3.5%207.976-7.97%201.555.583%202.529%22%20stroke-width=%221.058%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M41.543%2032.628V2.686%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M30.754%2012.436L41.443%201.984l10.35%2010.452%22%20stroke-width=%223.969%22%20stroke-linejoin=%22round%22/%3E%3C/g%3E%3Cg%20transform=%22matrix(.842%200%200%20.842%20-19.408%20-26.157)%22%20stroke=%22green%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "2708468d-1088-4570-be63-fb0d4799a941", - "type": "basic.input", + "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "turquoise", + "name": "B2", + "oldBlockColor": "turquoise" }, "position": { - "x": 88, - "y": 152 + "x": 712, + "y": 232 } }, { - "id": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", + "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", "type": "basic.input", "data": { - "name": "", - "clock": false + "name": "1", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 88, - "y": 280 + "x": 120, + "y": 240 } }, { - "id": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "type": "basic.output", + "id": "569d2a99-51b3-4a38-9b7b-ace665061883", + "type": "basic.inputLabel", "data": { - "name": "" + "blockColor": "fuchsia", + "name": "A1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 616, - "y": 352 + "x": 432, + "y": 296 } }, { - "id": "49c0a94e-2687-4aa4-8cba-327b2942095f", - "type": "basic.info", + "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "type": "basic.outputLabel", "data": { - "info": "## Edges detector\n\nIt generates a 1-period pulse (tic) when an edge (Rising or falling) is detected on the \ninput signal", - "readonly": true + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 104, - "y": -40 - }, - "size": { - "width": 648, - "height": 96 + "x": 712, + "y": 304 } }, { - "id": "a6ea5e17-d259-4272-8d1c-87a6a7fe3235", - "type": "basic.info", + "id": "377986eb-1798-42b1-846a-3e33efe71ce4", + "type": "basic.inputLabel", "data": { - "info": "Input signal", - "readonly": true + "blockColor": "fuchsia", + "name": "A0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 96, - "y": 256 - }, - "size": { - "width": 136, - "height": 40 + "x": 416, + "y": 360 } }, { - "id": "d0d6c668-3c03-42f5-9244-9a0431f11a87", - "type": "basic.info", + "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "type": "basic.outputLabel", "data": { - "info": "System clock", - "readonly": true + "blockColor": "fuchsia", + "name": "A1", + "oldBlockColor": "fuchsia" }, "position": { - "x": 104, - "y": 120 - }, - "size": { - "width": 96, - "height": 48 + "x": 712, + "y": 400 } }, { - "id": "f18011f4-eb45-4f91-9716-c1d8c99f1845", - "type": "basic.info", + "id": "0c30aa42-915c-42e9-9179-f46349c9400c", + "type": "basic.output", "data": { - "info": "Current signal \nstate", - "readonly": true + "name": "", + "range": "[3:0]", + "size": 4 }, "position": { - "x": 160, - "y": 352 - }, - "size": { - "width": 168, - "height": 48 + "x": 1256, + "y": 416 } }, { - "id": "ab801839-c115-4e44-adb7-349586890b97", - "type": "basic.info", + "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "type": "basic.inputLabel", "data": { - "info": "Signal state in the previous \nclock cycle", - "readonly": true + "blockColor": "turquoise", + "name": "B3", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, "position": { - "x": 328, - "y": 200 - }, - "size": { - "width": 248, - "height": 48 + "x": 456, + "y": 464 } }, { - "id": "fde5c436-d382-48e7-80b5-390c05f46b9d", - "type": "basic.info", + "id": "ea1e0257-805a-4562-9264-66dd07a08022", + "type": "basic.outputLabel", "data": { - "info": "The output is 1 if the current value is 1 and the \nprevious 0, or if the current value is 0 and the \nprevious 1\n", - "readonly": true + "blockColor": "turquoise", + "name": "B1", + "oldBlockColor": "turquoise" }, "position": { - "x": 504, - "y": 264 - }, - "size": { - "width": 400, - "height": 72 + "x": 712, + "y": 488 } }, { - "id": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 480, - "y": 352 + "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B2", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "turquoise" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 464, + "y": 528 } }, { - "id": "5590cf27-7da8-4183-b70c-0c9fda4a6dc0", - "type": "basic.info", + "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "type": "basic.input", "data": { - "info": "In any other case the output is 0", - "readonly": true + "name": "0", + "range": "[3:0]", + "clock": false, + "size": 4 }, "position": { - "x": 520, - "y": 432 - }, - "size": { - "width": 296, - "height": 40 + "x": 120, + "y": 544 } }, { - "id": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 320, - "y": 264 + "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "type": "basic.outputLabel", + "data": { + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, - "size": { - "width": 96, - "height": 64 + "position": { + "x": 712, + "y": 560 } - } - ], - "wires": [ + }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" + "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B1", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "position": { + "x": 464, + "y": 592 } }, { - "source": { - "block": "2708468d-1088-4570-be63-fb0d4799a941", - "port": "out" + "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", + "type": "basic.outputLabel", + "data": { + "blockColor": "fuchsia", + "name": "A0" }, - "target": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "position": { + "x": 720, + "y": 648 } }, { - "source": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "type": "basic.inputLabel", + "data": { + "blockColor": "turquoise", + "name": "B0", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, - "target": { - "block": "1c25e08e-e664-4fab-9b30-cedc1f8a3739", - "port": "in" + "position": { + "x": 432, + "y": 648 } }, { - "source": { - "block": "4162d5b1-1fa7-4c48-827a-c9fde7ee204f", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "type": "basic.outputLabel", + "data": { + "blockColor": "turquoise", + "name": "B0", + "oldBlockColor": "fuchsia" }, - "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + "position": { + "x": 720, + "y": 720 } }, { - "source": { - "block": "9ca5353b-32fd-4f1f-af0b-5339bd50b1ff", - "port": "out" - }, - "target": { - "block": "4a6c58dc-e4cb-43b8-8a52-07ef0aa616f6", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [ - { - "x": 264, - "y": 368 - } - ] - } - ] - } - } - }, - "dc93d663ad1f02da00a0889f408a1f59b739c755": { - "package": { - "name": "Sync-x01", - "version": "0.2", - "description": "Sync 1-bit input with the system clock domain", - "author": "Juan Gonzalez-González (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22214.451%22%20height=%22214.451%22%20viewBox=%220%200%20214.45128%20214.45128%22%3E%3Ccircle%20cx=%22107.226%22%20cy=%22107.226%22%20r=%22107.226%22%20fill=%22#4d4d4d%22/%3E%3Cpath%20d=%22M107.363%2038.297c14.504.03%2029.212%204.552%2040.7%2013.5%208.077%209.303-7.312%2019.268-14.243%2010.195-20.865-12.624-50.29-8.18-65.988%2010.695-8.352%209.367-13.058%2021.866-13.003%2034.413h13.789c-7.353%2011.037-14.707%2022.066-22.06%2033.095l-22.062-33.087h13.788c-.439-29.962%2021.108-58.462%2050.032-66.221%206.212-1.701%2012.607-2.654%2019.048-2.587zm60.53%2035.85l22.063%2033.092h-13.789c.39%2030.318-21.706%2059.137-51.14%2066.487-19.862%205.547-42.32%201.5-58.645-11.19-8.329-9.459%207.274-19.328%2014.27-10.173%2020.214%2012.265%2048.524%208.375%2064.48-9.142%209.242-9.522%2014.56-22.711%2014.489-35.982h-13.789l22.062-33.092z%22%20fill=%22#fbfbc9%22/%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "39873fa0-c3f5-47ef-b54b-b6b344416b25", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "type": "basic.input", "data": { - "name": "", - "clock": true + "name": "sel", + "clock": false }, "position": { - "x": -256, - "y": -56 + "x": 104, + "y": 728 } }, { - "id": "e226f910-14af-473d-956b-03559f466726", + "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", "type": "basic.inputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "navy", + "name": "sel", "pins": [ { "index": "0", - "name": "", - "value": "" + "name": "NULL", + "value": "NULL" } ], - "virtual": true + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": -104, - "y": -56 + "x": 264, + "y": 728 } }, { - "id": "7f538425-03ff-409e-81c2-d2714dfb036f", + "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk" + "blockColor": "navy", + "name": "sel", + "oldBlockColor": "fuchsia" }, "position": { - "x": 128, - "y": 32 + "x": 712, + "y": 800 } }, { - "id": "868cf45b-3801-40c1-9a04-498087cf183e", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": 472 }, + "size": { + "width": 96, + "height": 96 + } + }, + { + "id": "d933500c-d68a-479f-9e5d-f4fb16510968", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": -56, - "y": 72 + "x": 864, + "y": 704 + }, + "size": { + "width": 96, + "height": 96 } }, { - "id": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "type": "basic.output", + "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", + "type": "basic.info", "data": { - "name": "" + "info": "Channel A", + "readonly": true }, "position": { - "x": 424, + "x": 304, "y": 128 + }, + "size": { + "width": 144, + "height": 32 } }, { - "id": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", - "type": "basic.input", + "id": "4593d302-bf1c-414c-917f-e13e667192e3", + "type": "basic.info", "data": { - "name": "", - "clock": false + "info": "Channel B", + "readonly": true }, "position": { - "x": -64, - "y": 160 + "x": 304, + "y": 480 + }, + "size": { + "width": 144, + "height": 32 } }, { - "id": "530188ca-389b-48f1-8fc5-793e57545112", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "3d24183b-338b-439c-aec1-f4a264907b97", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", "position": { - "x": 104, - "y": 144 + "x": 856, + "y": 216 }, "size": { "width": 96, - "height": 64 + "height": 96 } }, { - "id": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", + "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "type": "84f0a15761ee8b753f67079819a7614923939472", "position": { - "x": 280, - "y": 128 + "x": 1040, + "y": 384 }, "size": { "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "39873fa0-c3f5-47ef-b54b-b6b344416b25", - "port": "out" - }, - "target": { - "block": "e226f910-14af-473d-956b-03559f466726", - "port": "inlabel" + "height": 128 } }, { - "source": { - "block": "868cf45b-3801-40c1-9a04-498087cf183e", - "port": "outlabel" + "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", + "position": { + "x": 856, + "y": -16 }, - "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 96 } }, { - "source": { - "block": "7f538425-03ff-409e-81c2-d2714dfb036f", - "port": "outlabel" + "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 288, + "y": 512 }, - "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" + "size": { + "width": 96, + "height": 128 } }, { - "source": { - "block": "f25e9a9e-cd4c-4025-8745-0691a99a3fb8", + "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", + "position": { + "x": 280, + "y": 208 + }, + "size": { + "width": 96, + "height": 128 + } + } + ], + "wires": [ + { + "source": { + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", "port": "out" }, "target": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", + "port": "inlabel" } }, { "source": { - "block": "530188ca-389b-48f1-8fc5-793e57545112", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", + "port": "outlabel" }, "target": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } }, { "source": { - "block": "d39acc02-7346-4539-a1fe-10ae4f16a0c6", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" + "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", + "port": "outlabel" }, "target": { - "block": "7bfc506f-7a54-40a1-8d33-e78a5409b972", - "port": "in" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" } - } - ] - } - } - }, - "ad96dc706d08e8529f19944fe45991970dda6d11": { - "package": { - "name": "not-wire-x01", - "version": "0.3", - "description": "Select positive or negative logic for the input (0=positive, 1=negative)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.537%22%20height=%22255.621%22%20version=%221%22%3E%3Cpath%20d=%22M112.127%2098.805l133.418%2076.406-133.418%2076.41z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22263.881%22%20cy=%22174.972%22%20rx=%2217.634%22%20ry=%2217.982%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4%20175.592h108.187m169.632%200h31.718%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%22121.949%22%20y=%22187.178%22%20transform=%22scale(.9971%201.0029)%22%20font-weight=%22400%22%20font-size=%229.874%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%22121.949%22%20y=%22187.178%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2240.873%22%3ENot%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M4%2062.122h309.537%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2214.865%22%20y=%2236.868%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2214.865%22%20y=%2236.868%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:0%25%22%20x=%2216.903%22%20y=%22151.969%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2216.903%22%20y=%22151.969%22%20style=%22line-height:1.25;-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%20font-size=%2249.675%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1607779171609 - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 824, - "y": 304 + "target": { + "block": "569d2a99-51b3-4a38-9b7b-ace665061883", + "port": "inlabel" } }, { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "", - "clock": false + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "position": { - "x": 376, - "y": 320 + "target": { + "block": "377986eb-1798-42b1-846a-3e33efe71ce4", + "port": "inlabel" } }, { - "id": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "type": "basic.constant", - "data": { - "name": "not", - "value": "0", - "local": false + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" }, - "position": { - "x": 520, - "y": 160 + "target": { + "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", + "port": "inlabel" } }, { - "id": "019e81db-5707-409c-b159-b4cb29813cc4", - "type": "basic.info", - "data": { - "info": "When k=0, it works like a wire \n(The output is equal to the input) \nWhen k=1, it act as a not gate\n(The output is the inverse of the input)", - "readonly": true - }, - "position": { - "x": 632, - "y": 392 + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0f7487e5-b070-4277-bba6-acf69934afca" }, - "size": { - "width": 336, - "height": 96 + "target": { + "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", + "port": "inlabel" } }, { - "id": "68880edb-df66-4540-8ee4-f3836fdb5f0e", - "type": "basic.info", - "data": { - "info": "### Truth table for XOR\n\n| k | input | output | function |\n|---|-------|--------|----------|\n| 0 | 0 | 0 | wire |\n| 0 | 1 | 1 | wire |\n| 1 | 0 | 1 | Not |\n| 1 | 1 | 0 | Not |", - "readonly": true + "source": { + "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 8 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + } + }, + { + "source": { + "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", + "port": "outlabel" }, - "size": { - "width": 296, - "height": 144 + "target": { + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" } }, { - "id": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "type": "d1240143e1ff7afe57f0f11565da980612b2bb76", - "position": { - "x": 672, - "y": 304 + "source": { + "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } }, { - "id": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "type": "6b14d5741f7e62a08c61190175d6447b05954bbd", - "position": { - "x": 520, - "y": 256 + "source": { + "block": "ea1e0257-805a-4562-9264-66dd07a08022", + "port": "outlabel" }, - "size": { - "width": 96, - "height": 64 + "target": { + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" } - } - ], - "wires": [ + }, { "source": { - "block": "2cd40fd8-3a2b-46f7-a922-fedf146ed11a", - "port": "constant-out" + "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", + "port": "outlabel" }, "target": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4" + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" }, "vertices": [] }, { "source": { - "block": "c6095afa-5850-4d13-bcb1-5b60be247b89", - "port": "5d443143-4aca-4d4f-ba40-2b88451b86d3" + "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", + "port": "outlabel" }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" + }, + "vertices": [] }, { "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" + "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", + "port": "outlabel" }, "target": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - } + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] }, { "source": { - "block": "100882d4-91fe-428f-9ce9-9e02ed2b2a9d", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" + "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", + "port": "inlabel" } - } - ] - } - } - }, - "6b14d5741f7e62a08c61190175d6447b05954bbd": { - "package": { - "name": "1-bit-gen-constant", - "version": "0.0.2", - "description": "1-bit generic constant (0/1)", - "author": "Juan Gonzalez-Gomez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22145.608%22%20height=%22247.927%22%20viewBox=%220%200%20136.50729%20232.43134%22%3E%3Cg%20style=%22line-height:0%25;-inkscape-font-specification:'Ubuntu%20Mono'%22%3E%3Cpath%20d=%22M56.012%20146.905q9.055%206.708%2020.459%2017.105%2011.404%2010.062%2022.472%2021.8%2011.403%2011.74%2021.465%2024.15%2010.062%2012.074%2016.1%2022.471h-32.87q-6.372-10.397-15.763-21.13-9.392-11.068-20.124-21.13-10.398-10.062-21.13-18.447-10.398-8.385-18.783-14.087v74.794H0V4.695L27.838%200v141.874q18.447-16.1%2036.894-31.863%2018.447-16.1%2033.205-33.205h32.533q-14.422%2017.106-34.881%2035.217-20.124%2018.112-39.577%2034.882z%22%20style=%22line-height:1.25%22%20font-size=%22335.399%22%20font-weight=%22400%22%20font-family=%22Ubuntu%20Mono%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22green%22/%3E%3C/g%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ + }, { - "id": "5d443143-4aca-4d4f-ba40-2b88451b86d3", - "type": "basic.output", - "data": { - "name": "" + "source": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "33072210-9ba0-4659-8339-95952b939e6e" }, - "position": { - "x": 960, - "y": 248 + "target": { + "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", + "port": "inlabel" } }, { - "id": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false + "source": { + "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", + "port": "outlabel" }, - "position": { - "x": 728, - "y": 128 - } + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" + }, + "vertices": [] }, { - "id": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "type": "basic.code", - "data": { - "code": "assign k = VALUE;", - "params": [ - { - "name": "VALUE" - } - ], - "ports": { - "in": [], - "out": [ - { - "name": "k" - } - ] - } + "source": { + "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", + "port": "outlabel" }, - "position": { - "x": 672, - "y": 248 + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" }, - "size": { - "width": 208, - "height": 64 + "vertices": [] + }, + { + "source": { + "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", + "port": "outlabel" + }, + "target": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" + }, + "vertices": [] + }, + { + "source": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" + }, + "target": { + "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", + "port": "inlabel" } - } - ], - "wires": [ + }, { "source": { - "block": "c0fb4784-5e8c-4f41-9f4b-6daa2e9e03a4", - "port": "constant-out" + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" }, "target": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "VALUE" + "block": "6776605f-93ce-4cae-8606-055bd2415b2d", + "port": "inlabel" } }, { "source": { - "block": "7dbe7521-0f9f-43ee-ab0c-0439e2c20bc2", - "port": "k" + "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" }, "target": { - "block": "5d443143-4aca-4d4f-ba40-2b88451b86d3", + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" + }, + "vertices": [ + { + "x": 984, + "y": 472 + } + ] + }, + { + "source": { + "block": "d933500c-d68a-479f-9e5d-f4fb16510968", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + }, + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" + } + }, + { + "source": { + "block": "3d24183b-338b-439c-aec1-f4a264907b97", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + }, + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" + }, + "vertices": [ + { + "x": 976, + "y": 352 + } + ] + }, + { + "source": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "55180947-6349-4a04-a151-ad69ea2b155e" + }, + "target": { + "block": "0c30aa42-915c-42e9-9179-f46349c9400c", "port": "in" + }, + "size": 4 + }, + { + "source": { + "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", + "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" + }, + "target": { + "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", + "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" } + }, + { + "source": { + "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", + "port": "out" + }, + "target": { + "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 + }, + { + "source": { + "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", + "port": "out" + }, + "target": { + "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", + "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" + }, + "size": 4 } ] } } }, - "76aa0869ee7611bee922825aab0ac5b7b21559f6": { + "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { "package": { - "name": "display16-8", - "version": "0.2", - "description": "Display16-8: Display a 16-bits value on an 8-LEDs. The sel input selects the byte to display ", + "name": "Mux-2-1", + "version": "0.1", + "description": "2-to-1 Multplexer (1-bit channels)", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20id=%22Layer_1%22%20width=%22388.65%22%20height=%22240.785%22%20viewBox=%220%200%20404.84384%20250.81723%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cdefs%20id=%22defs909%22%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939%22/%3E%3Cmarker%20id=%22TriangleOutM-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5%22%3E%3Cpath%20id=%22a-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-75%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-56%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-1%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-06%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-26%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-8%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-20%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-2%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-7%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-5%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-2%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-8%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-3%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-6%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-1%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-0%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-6%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path937-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path939-2%22/%3E%3Cmarker%20id=%22TriangleOutM-9-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-1-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-2-1%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-7-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-93-4%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-6-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-0-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-6-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-2-6%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-6-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-5-1-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-3-8-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-5-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-6-9-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-2-2-2%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-9-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-1-2-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-2-3-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-7-7-4%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-5-4%22%3E%3Cpath%20id=%22a-9-3%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3C/defs%3E%3Cpath%20id=%22path880-0%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20id=%22TriangleInM-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-2.308%200l3.46-2v4z%22%20id=%22path4321-8%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22EmptyTriangleInM-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-.508%200l3.46-2v4z%22%20id=%22path4339-8%22%20fill=%22#fff%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-3-2-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path4297-4%22%20fill=%22#00f%22%20fill-rule=%22evenodd%22%20stroke=%22#00f%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4456-3%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4458-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22marker4428-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4430-9%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-67-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path4179-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cpath%20id=%22path919-6%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path971-8%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20id=%22path1177-9%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-36-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-6%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-7-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-4%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-53-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-5%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1405%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1407%22/%3E%3Cpath%20id=%22path1409%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-71%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-1%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-7%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-7%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-67%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-753%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-56%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-91%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-27%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-7-9%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1880-5-3%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-60%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1762-5-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-6-2%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path1744-2-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill=%22red%22%20fill-rule=%22evenodd%22%20stroke=%22red%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-367%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-53%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-562%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-9%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-12%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-7%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-9%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-6%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-0%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-62%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-8%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-92%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-23%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-75%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-9%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-2%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1696%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1322%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1324%22/%3E%3Cpath%20id=%22path1326%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1328%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1330%22/%3E%3Cpath%20id=%22path1332%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1334%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-0%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-9%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-36%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-62%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-61%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-79%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-20%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-23%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-7%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-9%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-22%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-89%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-73%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-29%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-3%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-1%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-94%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path943-7%22/%3E%3Cmarker%20orient=%22auto%22%20id=%22TriangleOutM-3-8%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path972-57-4%22%20d=%22M2.308%200l-3.46%202v-4z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-0-5%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-8-0%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-1-3%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-9-6%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow2Mend-3-97-1%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path854-6-8-0%22%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20orient=%22auto%22%20id=%22Arrow1Mend-5-25-6%22%20overflow=%22visible%22%3E%3Cpath%20id=%22path836-3-3-3%22%20d=%22M-4%200l-2%202%207-2-7-2z%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22TriangleOutM-7-4-2%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M2.308%200l-3.46%202v-4z%22%20id=%22path972-5-9-0%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-3-0-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-5-2-1%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-6-0-5%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-2-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow2Mend-3-9-9-4%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-5.231-2.42L1.324-.01-5.23%202.401c1.047-1.423%201.041-3.37%200-4.821z%22%20id=%22path854-6-1-6-7%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.375%22%20stroke-linejoin=%22round%22/%3E%3C/marker%3E%3Cmarker%20id=%22Arrow1Mend-5-2-2-6%22%20orient=%22auto%22%20overflow=%22visible%22%3E%3Cpath%20d=%22M-4%200l-2%202%207-2-7-2z%22%20id=%22path836-3-7-1-5%22%20fill-rule=%22evenodd%22%20stroke=%22#000%22%20stroke-width=%22.4pt%22/%3E%3C/marker%3E%3Cdefs%20id=%22defs3-2-6%22%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22a-0-9%22/%3E%3C/defs%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path1218-3%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path956-7%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path958-4%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45130%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path45132%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4656%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4658%22/%3E%3Cpath%20id=%22path4660%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4662%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4664%22/%3E%3Cpath%20id=%22path4666%22%20d=%22M-58.3-45h653.6v640H-58.3z%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4668%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4670%22/%3E%3Cpath%20d=%22M-58.3-45h653.6v640H-58.3z%22%20id=%22path4672%22/%3E%3C/defs%3E%3Cg%20id=%22layer1%22%20transform=%22translate(71.198)%22%3E%3Cg%20id=%22g3798%22%3E%3Cpath%20id=%22connector0pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22connector1pin%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22connector0leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22connector1leg%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect887%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path889%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path14%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path16%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path18%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path20%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22color_path22%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse24%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22color_ellipse26%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon28%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2022.371v-4.184h3.916l5.551-5.958H4.732L3.06%2013.4v8.971z%22/%3E%3Cpath%20id=%22polygon30%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M10.294%2018.187h5.067v4.184h1.269V11.839h-1.66l.606.708z%22/%3E%3Cpath%20id=%22color_path32%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path34%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path36%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path38%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3838%22%20transform=%22translate(115.054)%22%3E%3Cpath%20id=%22rect3800%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3802%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3804%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3806%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3808%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3810%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3812%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3814%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3816%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3818%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3820%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3822%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3824%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3826%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M4.439%2018.187h3.916l5.551-5.958H4.732L3.06%2013.4v8.971h1.379z%22/%3E%3Cpath%20id=%22polygon3828%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2018.187v4.184h1.269V11.839h-1.66l.606.708-5.282%205.64z%22/%3E%3Cpath%20id=%22path3830%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3832%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3834%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3836%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g3878%22%20transform=%22translate(231.418)%22%3E%3Cpath%20id=%22rect3840%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M22.825%20168.136h14.234v4.762H22.825z%22/%3E%3Cpath%20id=%22rect3842%22%20fill=%22none%22%20stroke-width=%224.762%22%20d=%22M70.446%20168.136h14.248v4.762H70.446z%22/%3E%3Cpath%20id=%22line3844%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M29.939%20185.925v36.003%22/%3E%3Cpath%20id=%22line3846%22%20fill=%22none%22%20stroke=%22#8c8c8c%22%20stroke-width=%2214.229%22%20stroke-linecap=%22round%22%20d=%22M77.575%20191.782v30.21%22/%3E%3Cpath%20id=%22rect3848%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22%20d=%22M22.825%20128.177h14.229v64.998H22.825z%22/%3E%3Cpath%20d=%22M84.69%20193.175c0-7.763-7.044-13.906-13.81-19.787-2.753-2.429-7.935-6.624-7.935-9.424V127.78H48.65v38.23c0%207%206.267%2012.425%2012.872%2018.178%202.938%202.485%208.919%208.267%208.919%2011.705%22%20id=%22path3850%22%20fill=%22#8c8c8c%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3852%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.3%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3854%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.5%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3856%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.9%22%20fill=%22#d1d1d1%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3858%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528V137.148c9.748%2010.925%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.75v-10.076c-.005-7.552-3.138-14.572-8.486-20.539z%22%20opacity=%22.7%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3860%22%20d=%22M93.742%2085.99v20.538c0%2018.115-20.939%2032.84-46.864%2032.84C21.001%20139.368%200%20124.69%200%20106.528v20.54c9.748%2010.914%2027.096%2018.205%2046.878%2018.205%2030.554%200%2055.35-17.315%2055.35-38.75-.005-7.547-3.138-14.567-8.486-20.534z%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3862%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e6e6e6%22%20stroke-width=%224.762%22/%3E%3Cellipse%20id=%22ellipse3864%22%20cx=%2246.878%22%20cy=%22106.528%22%20rx=%2246.873%22%20ry=%2232.811%22%20opacity=%22.25%22%20fill=%22#e60000%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22polygon3866%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M8.355%2018.187l5.551-5.958H4.732L3.06%2013.4v8.971h1.379v-4.184z%22/%3E%3Cpath%20id=%22polygon3868%22%20transform=%22scale(4.7621)%22%20fill=%22#666%22%20d=%22M15.361%2022.371h1.269V11.839h-1.66l.606.708-5.282%205.64h5.067z%22/%3E%3Cpath%20id=%22path3870%22%20d=%22M93.742%2085.99V46.882C93.742%2021%2072.789%200%2046.878%200%2021.001%200%200%2020.963%200%2046.883v90.275c9.748%2010.92%2027.096%2018.206%2046.878%2018.206%2030.554%200%2055.35-17.315%2055.35-38.754v-10.077c-.005-7.557-3.138-14.577-8.486-20.544z%22%20opacity=%22.65%22%20fill=%22green%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3872%22%20d=%22M68.708%2024.83l9.5-1.81c-5.567-7.486-13.772-12.948-23.425-14.805l1.681%207.148c5.053%201.79%209.305%205.162%2012.244%209.467z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3874%22%20d=%22M5.081%20131.791v10.053c4.29%203.5%209.482%206.457%2015.263%208.71v-10.086c-5.81-2.224-10.958-5.172-15.263-8.677z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3Cpath%20id=%22path3876%22%20d=%22M73.236%20133.667c-1.69.81-3.505%201.52-5.328%202.181-.386.129-.777.267-1.177.386-3.728%201.186-7.68%202.11-11.872%202.61-.495.062-1%20.124-1.485.128-2.12.2-4.258.386-6.42.386-.98%200-2.033-.1-3.119-.157-7.938-.376-15.415-2.081-21.81-4.89V46.906c0-9.73%205.61-18.053%2013.715-22.154l-.148-.352-8.253-10C16.296%2021.034%208.886%2033.068%208.886%2046.888v78.741c-.329-.329-2.038-2.043-3.176-3.505l-2.034%204.548c9.267%209.8%2025.192%2016.282%2043.274%2016.282%2011.11%200%2021.41-2.472%2029.839-6.63l-3.486-2.704-.067.047z%22%20opacity=%22.5%22%20fill=%22#fff%22%20stroke-width=%224.762%22/%3E%3C/g%3E%3Cg%20id=%22g992%22%20transform=%22matrix(3.12287%200%200%203.12287%20-338.95%20-26.116)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20r=%2214.559%22%20cy=%2273.815%22%20cx=%22100.602%22%20id=%22path992-2%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20id=%22path1773-2-3-1-8-9%22%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/g%3E%3Cstyle%20id=%22style2%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-0%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3Cstyle%20id=%22style2-9-9%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#303030;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#303030%7D%3C/style%3E%3C/svg%3E", - "otid": 1636642572055 + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", + "otid": 1618922858665 }, "design": { "graph": { "blocks": [ { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", + "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "type": "basic.outputLabel", "data": { - "name": "", - "clock": true + "blockColor": "fuchsia", + "name": "a" }, "position": { - "x": 216, - "y": -40 + "x": 456, + "y": 360 } }, { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", + "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", + "type": "basic.output", "data": { - "blockColor": "yellow", - "name": "clk" + "name": "" }, "position": { - "x": 368, - "y": -40 + "x": 1096, + "y": 392 } }, { - "id": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", + "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", "type": "basic.input", "data": { - "name": "data", - "range": "[15:0]", - "clock": false, - "size": 16 + "name": "1", + "clock": false }, "position": { - "x": 200, - "y": 128 + "x": 136, + "y": 416 } }, { - "id": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "a", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true }, "position": { - "x": 344, - "y": 128 + "x": 272, + "y": 416 } }, { - "id": "514effa0-6d57-4281-b479-22d05798dceb", - "type": "basic.outputLabel", + "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", + "type": "basic.inputLabel", "data": { - "name": "data", - "range": "[15:0]", "blockColor": "fuchsia", - "size": 16 + "name": "b", + "pins": [ + { + "index": "0", + "name": "NULL", + "value": "NULL" + } + ], + "virtual": true, + "oldBlockColor": "fuchsia" }, "position": { - "x": 560, - "y": 128 + "x": 272, + "y": 528 } }, { - "id": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", - "type": "basic.output", + "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "type": "basic.input", "data": { - "name": "LED", - "range": "[7:0]", - "size": 8 + "name": "0", + "clock": false }, "position": { - "x": 1136, - "y": 144 + "x": 136, + "y": 528 } }, { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "id": "8d94a294-a698-43c5-9777-874fd39b8586", "type": "basic.outputLabel", "data": { - "blockColor": "yellow", - "name": "clk", + "blockColor": "fuchsia", + "name": "b", "oldBlockColor": "fuchsia" }, "position": { - "x": 600, - "y": 240 + "x": 616, + "y": 552 } }, { - "id": "38edd85d-359d-43ac-a794-056763ee2628", - "type": "basic.output", + "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "type": "basic.input", "data": { - "name": "byte" + "name": "sel", + "clock": false }, "position": { - "x": 1208, - "y": 296 + "x": 376, + "y": 656 } }, { - "id": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 600, - "y": 312 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 200, - "y": 320 - } - }, - { - "id": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "ticsel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 344, - "y": 320 - } - }, - { - "id": "31636314-c790-4631-b8c2-1dad55572202", - "type": "basic.output", - "data": { - "name": "b0" - }, - "position": { - "x": 1216, - "y": 376 - } - }, - { - "id": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", + "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "type": "873425949b2a80f1a7f66f320796bcd068a59889", "position": { - "x": 1064, - "y": 376 + "x": 952, + "y": 392 }, "size": { "width": 96, @@ -10570,51 +11123,35 @@ } }, { - "id": "2290c0ff-9db3-4532-b0dd-02a66dd9660b", - "type": "basic.info", - "data": { - "info": "Byte 0 \n(least significant) ", - "readonly": true - }, + "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 1344, + "x": 600, "y": 376 }, - "size": { - "width": 184, - "height": 56 - } - }, - { - "id": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "type": "5f3cf7148ac353908288363a508fc6ac1e390e48", - "position": { - "x": 744, - "y": 296 - }, "size": { "width": 96, "height": 64 } }, { - "id": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "type": "d1a52ec25aee5e4823102a32325600666fe99e12", + "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", "position": { - "x": 952, - "y": 128 + "x": 624, + "y": 656 }, "size": { "width": 96, - "height": 96 + "height": 64 } }, { - "id": "ba73010a-9cb6-48fe-a664-e34e25778add", - "type": "306ca367fbbc5181b3c709d73f447e0710871a1d", + "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", "position": { - "x": 720, - "y": 128 + "x": 784, + "y": 568 }, "size": { "width": 96, @@ -10625,24 +11162,25 @@ "wires": [ { "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" + "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", + "port": "outlabel" }, "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, "vertices": [] }, { "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", + "block": "8d94a294-a698-43c5-9777-874fd39b8586", "port": "outlabel" }, "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6" - } + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" + }, + "vertices": [] }, { "source": { @@ -10650,3289 +11188,322 @@ "port": "out" }, "target": { - "block": "507d3d49-eaa9-40a3-b70c-be2c079afcc2", + "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", "port": "inlabel" } }, { "source": { - "block": "a655e940-39c4-45c2-af8a-0cd9fa3b332b", - "port": "outlabel" - }, - "target": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4" - } - }, - { - "source": { - "block": "7aa1b478-274f-44d6-b3b6-dc7f9a6f533b", - "port": "out", - "size": 16 + "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", + "port": "out" }, "target": { - "block": "c1caab23-c04b-4f46-a907-2d67d8161afd", + "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", "port": "inlabel" - }, - "size": 16 - }, - { - "source": { - "block": "514effa0-6d57-4281-b479-22d05798dceb", - "port": "outlabel" - }, - "target": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "a0c9783a-c287-45a7-bfc7-9da552cf732f", - "size": 16 - }, - "size": 16 + } }, { "source": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "e1862e57-1abc-4f76-84f6-3c3d71126ba8", + "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", "port": "in" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "31636314-c790-4631-b8c2-1dad55572202", - "port": "in" - } - }, - { - "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "6ac467f0-b16b-44ef-8f03-ae206c13186e" - }, - "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "520455a3-592c-4fd0-ade9-62d366c88919" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "ba73010a-9cb6-48fe-a664-e34e25778add", - "port": "0e7ef93d-c4da-4c2e-9653-7a470dc912b6" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "e045f285-627f-42f7-b073-faa36ef6d420" + "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "size": 8 + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", + "port": "out" }, "target": { - "block": "3c49dec2-c46d-46a8-94d1-e0387ebfe9d0", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" }, - "target": { - "block": "38edd85d-359d-43ac-a794-056763ee2628", - "port": "in" - } + "vertices": [] }, { "source": { - "block": "f0e9223b-5102-41c9-b6de-fe3c2be939e7", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" }, "target": { - "block": "ae44a77b-1f21-4a5b-be03-77561b62fb1b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - } - } - ] - } - } - }, - "5f3cf7148ac353908288363a508fc6ac1e390e48": { - "package": { - "name": "TFF", - "version": "0.2", - "description": "System TFF with toggle input: It toogles on every system cycle if the input is active", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1618503523961 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": -160 - } - }, - { - "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": -112 - } - }, - { - "id": "0a772657-8018-424d-8f04-75d3ffff3692", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" + "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", + "port": "97b51945-d716-4b6c-9db9-970d08541249" }, - "position": { - "x": 232, - "y": -112 - } + "vertices": [] }, { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 800, - "y": -112 - } - }, - { - "id": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "type": "basic.outputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": -64 - } - }, - { - "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "type": "basic.input", - "data": { - "name": "", - "clock": false - }, - "position": { - "x": 80, - "y": -40 - } - }, - { - "id": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "type": "basic.inputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 224, - "y": -40 - } - }, - { - "id": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "type": "basic.inputLabel", - "data": { - "name": "next", - "blockColor": "fuchsia" - }, - "position": { - "x": 880, - "y": 16 - } - }, - { - "id": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "type": "basic.outputLabel", - "data": { - "name": "toggle", - "blockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 32 - } - }, - { - "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 600, - "y": -232 - } - }, - { - "id": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 736, - "y": 16 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "type": "883a64fddf073765eeb23e5043b5cd06ede21dea", - "position": { - "x": 600, - "y": -80 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", - "port": "out" - }, - "target": { - "block": "0a772657-8018-424d-8f04-75d3ffff3692", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "b9359b10-b14f-4dd7-adf9-3f4f22bc65e6", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735" - } - }, - { - "source": { - "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", - "port": "out" - }, - "target": { - "block": "81f5e1f9-e867-4639-98b5-e12f7551751d", - "port": "inlabel" - } - }, - { - "source": { - "block": "a66e0e19-f794-47df-b52e-c663ff7fa3e2", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "58d2c88e-2434-438f-986b-0f5b9c3654ca" - } - }, - { - "source": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "8f321a4f-979f-46f9-b40f-524e6bc0008a", - "port": "inlabel" - } - }, - { - "source": { - "block": "f20a4359-8546-4dda-aa5c-d08bfe4724a0", - "port": "outlabel" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "1f324b9b-a8a8-43b9-9c34-2207a3ea75a5", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "4e8afe74-8f38-4873-97ee-f7585d99a4aa" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", - "port": "constant-out" - }, - "target": { - "block": "c5547ecd-aee5-4cf8-8f51-d4031e81f822", - "port": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8" - } - } - ] - } - } - }, - "883a64fddf073765eeb23e5043b5cd06ede21dea": { - "package": { - "name": "1-bit-reg", - "version": "0.1", - "description": "Reg: 1-Bit register", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22216.379%22%20height=%22279.911%22%20viewBox=%220%200%2057.25032%2074.059853%22%3E%3Cg%20stroke=%22#000%22%20stroke-width=%221.442%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M41.506%2040.152l13.608%2016.672-6.918-20.534%22%20fill=%22#ccc%22%20stroke-width=%221.0924880399999999%22/%3E%3Cpath%20d=%22M34.122%2032.088L24.89%2012.475l-6.45%203.724-2.07-3.583L37.276.546l2.07%203.584-6.093%203.517%2012.03%2018.223s5.4-2.025%208.536.74c3.136%202.766%202.52%204.92%202.887%204.772L33.017%2045.02s-2.849-3.695-2.16-6.795c.687-3.1%203.265-6.137%203.265-6.137z%22%20fill=%22red%22%20stroke-width=%221.0924880399999999%22/%3E%3C/g%3E%3Cg%20transform=%22translate(-93.518%20-22.665)%20scale(1.09073)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1594812046378 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "type": "basic.input", - "data": { - "name": "", - "clock": true - }, - "position": { - "x": 80, - "y": 440 - } - }, - { - "id": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "type": "basic.inputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 224, - "y": 440 - } - }, - { - "id": "fdd3edd9-8905-4c54-8364-502df1406563", - "type": "basic.outputLabel", - "data": { - "blockColor": "yellow", - "name": "clk" - }, - "position": { - "x": 640, - "y": 512 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "d", - "clock": false - }, - "position": { - "x": 80, - "y": 552 - } - }, - { - "id": "f7308710-bc81-45c4-9d5b-333551811cfa", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 232, - "y": 552 - } - }, - { - "id": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 552 - } - }, - { - "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1296, - "y": 592 - } - }, - { - "id": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 1152, - "y": 592 - } - }, - { - "id": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "curr_bit", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 928, - "y": 600 - } - }, - { - "id": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "data", - "oldBlockColor": "darkgreen" - }, - "position": { - "x": 456, - "y": 616 - } - }, - { - "id": "f4898f99-23a3-47f9-9685-a1e967218958", - "type": "basic.inputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "deepskyblue" - }, - "position": { - "x": 232, - "y": 632 - } - }, - { - "id": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "type": "basic.input", - "data": { - "name": "load", - "clock": false - }, - "position": { - "x": 80, - "y": 632 - } - }, - { - "id": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "type": "basic.outputLabel", - "data": { - "blockColor": "darkgreen", - "name": "load", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 456, - "y": 688 - } - }, - { - "id": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "type": "basic.constant", - "data": { - "name": "", - "value": "0", - "local": false - }, - "position": { - "x": 784, - "y": 504 - } - }, - { - "id": "6c0b315b-6b22-4d04-9490-a65f04d3fd60", - "type": "basic.info", - "data": { - "info": "Mux 2-1", - "readonly": true - }, - "position": { - "x": 640, - "y": 712 - }, - "size": { - "width": 104, - "height": 40 - } - }, - { - "id": "65bf7f7b-b016-4ef5-a213-a6b522777af0", - "type": "basic.info", - "data": { - "info": "D Flip-flip\n(System)", - "readonly": true - }, - "position": { - "x": 776, - "y": 680 - }, - "size": { - "width": 120, - "height": 48 - } - }, - { - "id": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "type": "a40d2f1701efd21a866b461c33578f4aeac9205c", - "position": { - "x": 616, - "y": 600 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "type": "053dc2e26797e60dd454402e395eb23f388681b9", - "position": { - "x": 784, - "y": 600 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "aa84d31e-cd92-44c7-bb38-c7a4cd903a78" - }, - "target": { - "block": "18cac15f-9b61-42a8-8184-afbe07b6bef6", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "d415eca8-29a2-4f41-8aa2-ad6b365b6696", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "df0c1bb1-f8ef-49f3-b71f-9384c29a9735", - "port": "out" - }, - "target": { - "block": "dc139650-fb3f-43a6-8b1f-8288353d3f81", - "port": "inlabel" - }, - "vertices": [] - }, - { - "source": { - "block": "fdd3edd9-8905-4c54-8364-502df1406563", - "port": "outlabel" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "3943e194-090b-4553-9df3-88bc4b17abc2" - } - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "f7308710-bc81-45c4-9d5b-333551811cfa", - "port": "inlabel" - } - }, - { - "source": { - "block": "58d2c88e-2434-438f-986b-0f5b9c3654ca", - "port": "out" - }, - "target": { - "block": "f4898f99-23a3-47f9-9685-a1e967218958", - "port": "inlabel" - } - }, - { - "source": { - "block": "ce0d3710-3604-4fcc-97cd-cc1c2d00e265", - "port": "outlabel" - }, - "target": { - "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", - "port": "in" - } - }, - { - "source": { - "block": "3580fc64-0ce0-438e-a139-d8ff092e08a2", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "1f2ba2b9-1bbe-4735-8c42-56b9a49f7df7", - "port": "outlabel" - }, - "target": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [ - { - "x": 576, - "y": 600 - } - ] - }, - { - "source": { - "block": "dea82159-0aa3-4eb0-a0c1-c77b359e16ff", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "bf2f0c53-2d04-4cba-aa70-2df85502d24f" - }, - "vertices": [] - }, - { - "source": { - "block": "17e4cdf4-3bce-44a9-904c-16c4a66ec3a8", - "port": "constant-out" - }, - "target": { - "block": "ba56fc22-f7c4-4728-9358-9d7a95fc884e", - "port": "65194b18-5d2a-41b2-bd86-01be99978ad6" - } - } - ] - } - } - }, - "a40d2f1701efd21a866b461c33578f4aeac9205c": { - "package": { - "name": "MuxF-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels). Fippled version", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.311%22%20height=%22157.528%22%20viewBox=%220%200%2075.291719%20147.68326%22%3E%3Cpath%20d=%22M73.885%2036.6c0-12.606-6.943-24.25-18.203-30.524C44.423-.2%2030.568-.145%2019.36%206.216%208.152%2012.577%201.304%2024.274%201.407%2036.88v73.923c-.103%2012.606%206.745%2024.303%2017.953%2030.664%2011.208%206.361%2025.063%206.415%2036.322.14%2011.26-6.274%2018.203-17.918%2018.203-30.524z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.813%22%20y=%225.115%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.813%22%20y=%225.115%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2223.725%22%20y=%2282.135%22%20transform=%22matrix(1.00468%200%200%20.99534%203.632%2042.289)%22%20font-weight=%22400%22%20font-size=%2233.286%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%2223.725%22%20y=%2282.135%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 144, - "y": 432 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 280, - "y": 432 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 432 - } - }, - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 416, - "y": 496 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 704, - "y": 496 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 280, - "y": 504 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 144, - "y": 504 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 416, - "y": 568 - } - }, - { - "id": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 576, - "y": 480 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - } - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "b55a256d-6938-4d55-b4dc-3fcd76e634a3", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - } - ] - } - } - }, - "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697": { - "package": { - "name": "Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (1-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a" - }, - "position": { - "x": 456, - "y": 360 - } - }, - { - "id": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "type": "basic.output", - "data": { - "name": "" - }, - "position": { - "x": 1096, - "y": 392 - } - }, - { - "id": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "type": "basic.input", - "data": { - "name": "1", - "clock": false - }, - "position": { - "x": 136, - "y": 416 - } - }, - { - "id": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "a", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 272, - "y": 416 - } - }, - { - "id": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 272, - "y": 528 - } - }, - { - "id": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "type": "basic.input", - "data": { - "name": "0", - "clock": false - }, - "position": { - "x": 136, - "y": 528 - } - }, - { - "id": "8d94a294-a698-43c5-9777-874fd39b8586", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "b", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 616, - "y": 552 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 376, - "y": 656 - } - }, - { - "id": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "type": "873425949b2a80f1a7f66f320796bcd068a59889", - "position": { - "x": 952, - "y": 392 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 600, - "y": 376 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "type": "3676a00f3a70e406487ed14b901daf3e4984e63d", - "position": { - "x": 624, - "y": 656 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "type": "ba518ee261a2be13a9739cd3a01cdcebe0ef63c0", - "position": { - "x": 784, - "y": 568 - }, - "size": { - "width": 96, - "height": 64 - } - } - ], - "wires": [ - { - "source": { - "block": "a0fa1754-f66a-4772-adc6-07f9549ae9fe", - "port": "outlabel" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "8d94a294-a698-43c5-9777-874fd39b8586", - "port": "outlabel" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7", - "port": "out" - }, - "target": { - "block": "d80dfce7-c76f-40a0-91ff-5e55863fe5da", - "port": "inlabel" - } - }, - { - "source": { - "block": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a", - "port": "out" - }, - "target": { - "block": "a14a9465-c4d0-4c20-aa1a-458b40aa8b70", - "port": "inlabel" - } - }, - { - "source": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "0e6a9a81-8521-4ade-8012-71915b39ae41", - "port": "in" - }, - "vertices": [] - }, - { - "source": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "cbd20301-0f38-49ce-bd16-b5d27a8ad6e8", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "18c2ebc7-5152-439c-9b3f-851c59bac834" - }, - "vertices": [] - }, - { - "source": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "ec23e0ef-db5d-46b0-b1fd-452e0dc46a0b", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - }, - { - "source": { - "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", - "port": "664caf9e-5f40-4df4-800a-b626af702e62" - }, - "target": { - "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", - "port": "97b51945-d716-4b6c-9db9-970d08541249" - }, - "vertices": [] - } - ] - } - } - }, - "d1a52ec25aee5e4823102a32325600666fe99e12": { - "package": { - "name": "8-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (8-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "type": "basic.outputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 768, - "y": 192 - } - }, - { - "id": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "type": "basic.inputLabel", - "data": { - "name": "A1", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 552, - "y": 208 - } - }, - { - "id": "520455a3-592c-4fd0-ade9-62d366c88919", - "type": "basic.input", - "data": { - "name": "1", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 200, - "y": 264 - } - }, - { - "id": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "type": "basic.outputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "oldBlockColor": "fuchsia", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 768, - "y": 264 - } - }, - { - "id": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "type": "basic.inputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 544, - "y": 280 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 416 - } - }, - { - "id": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "type": "basic.output", - "data": { - "name": "", - "range": "[7:0]", - "size": 8 - }, - "position": { - "x": 1336, - "y": 432 - } - }, - { - "id": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "type": "basic.inputLabel", - "data": { - "name": "B1", - "range": "[3:0]", - "blockColor": "lightseagreen", - "size": 4 - }, - "position": { - "x": 584, - "y": 528 - } - }, - { - "id": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "type": "basic.outputLabel", - "data": { - "name": "A0", - "range": "[3:0]", - "blockColor": "fuchsia", - "size": 4 - }, - "position": { - "x": 808, - "y": 552 - } - }, - { - "id": "e045f285-627f-42f7-b073-faa36ef6d420", - "type": "basic.input", - "data": { - "name": "0", - "range": "[7:0]", - "clock": false, - "size": 8 - }, - "position": { - "x": 208, - "y": 592 - } - }, - { - "id": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "type": "basic.inputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 584, - "y": 608 - } - }, - { - "id": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "type": "basic.outputLabel", - "data": { - "name": "B0", - "range": "[3:0]", - "blockColor": "turquoise", - "size": 4 - }, - "position": { - "x": 808, - "y": 616 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 808, - "y": 680 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 392, - "y": 768 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 552, - "y": 768 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 424, - "y": 512 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 968, - "y": 568 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "390876fb-5c5c-4ac6-b918-383ac0a105cb", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 424, - "y": 168 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "type": "afb28fd5426aea14477d11cbe30a290679f789f8", - "position": { - "x": 1152, - "y": 432 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "10dbbb33-fa47-4d9f-8723-170519859684", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 376, - "y": 264 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "9714e6fb-453b-435a-b124-72e5a30ff428", - "type": "6bdcd950abc9b45a5cdd4ffbdeff404a6f44660a", - "position": { - "x": 392, - "y": 592 - }, - "size": { - "width": 96, - "height": 64 - } - }, - { - "id": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "type": "952eda35358117b68b3f8a2489e9dc86168d0144", - "position": { - "x": 960, - "y": 248 - }, - "size": { - "width": 96, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "e5f303d0-c733-4c57-91cc-1839aecc1abf", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "vertices": [ - { - "x": 928, - "y": 624 - } - ], - "size": 4 - }, - { - "source": { - "block": "1ac67dde-5b18-4439-b031-3cdc5606fdb0", - "port": "outlabel" - }, - "target": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "c0d2677a-f00a-49e0-a06b-9cef7d5bcab6", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "eb61d084-ca22-4894-b8a2-f936db38f4b1", - "size": 4 - }, - "target": { - "block": "444c5fec-24a4-4ca0-95fc-e93fc978105f", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "c2826cf6-ae6e-42d0-a249-a670d1eaa424", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "637e64f4-0a6b-4037-9a75-89397e078a58", - "size": 4 - }, - "target": { - "block": "976f4fb3-80a7-41bf-9823-fe545cff0fcb", - "port": "inlabel" - }, - "size": 4 - }, - { - "source": { - "block": "1fabc99c-6477-496b-94f9-46305ba25e8e", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "8b06e5ad-1380-462d-a10b-6c448f90ca9a", - "port": "outlabel" - }, - "target": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "size": 4 - }, - "size": 4 - }, - { - "source": { - "block": "05b405a4-dfb4-405d-b772-0b7cc2a15984", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "843164ff-f7d8-48b9-bf59-1e0d1135c81f" - }, - "size": 4 - }, - { - "source": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "1269698e-e555-4fcb-a613-cb4c7ff2e598" - }, - "target": { - "block": "a932aa2c-3aad-4790-9d2f-7c05f1074aa4", - "port": "in" - }, - "size": 8 - }, - { - "source": { - "block": "520455a3-592c-4fd0-ade9-62d366c88919", - "port": "out" - }, - "target": { - "block": "10dbbb33-fa47-4d9f-8723-170519859684", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "e045f285-627f-42f7-b073-faa36ef6d420", - "port": "out" - }, - "target": { - "block": "9714e6fb-453b-435a-b124-72e5a30ff428", - "port": "f96fa616-e49a-4bb8-b1d0-ddafcc56569e" - }, - "size": 8 - }, - { - "source": { - "block": "b85ecc67-fa53-4039-9079-5ecf06308c8a", - "port": "0c30aa42-915c-42e9-9179-f46349c9400c" - }, - "target": { - "block": "8a64961f-f1cb-4dad-8eb7-6f1ded5c7d24", - "port": "a1770adf-e143-4506-9d87-3cb9c870f534" - }, - "vertices": [ - { - "x": 1088, - "y": 360 - } - ], - "size": 4 - } - ] - } - } - }, - "952eda35358117b68b3f8a2489e9dc86168d0144": { - "package": { - "name": "4-bits-Mux-2-1", - "version": "0.1", - "description": "2-to-1 Multplexer (4-bit channels)", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2280.833%22%20height=%22158.56%22%20viewBox=%220%200%2075.781585%20148.65066%22%3E%3Cpath%20d=%22M74.375%2036.836c0-12.691-6.99-24.413-18.326-30.729-11.335-6.316-25.284-6.262-36.568.141C8.198%2012.652%201.304%2024.427%201.407%2037.118v74.415c-.103%2012.69%206.79%2024.466%2018.074%2030.87%2011.284%206.403%2025.233%206.457%2036.568.14%2011.336-6.316%2018.326-18.037%2018.326-30.728z%22%20fill=%22none%22%20stroke=%22#00f%22%20stroke-width=%222.813%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.448%22%20y=%2291.518%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.448%22%20y=%2291.518%22%3E0%3C/tspan%3E%3C/text%3E%3Ctext%20style=%22line-height:125%25%22%20x=%227.359%22%20y=%2214.582%22%20transform=%22matrix(1.00472%200%200%20.9953%2020.25%2033.697)%22%20font-weight=%22400%22%20font-size=%2233.509%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%3E%3Ctspan%20x=%227.359%22%20y=%2214.582%22%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E", - "otid": 1618922858665 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": -72 - } - }, - { - "id": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 0 - } - }, - { - "id": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 72 - } - }, - { - "id": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 160 - } - }, - { - "id": "6776605f-93ce-4cae-8606-055bd2415b2d", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 160 - } - }, - { - "id": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 440, - "y": 224 - } - }, - { - "id": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 232 - } - }, - { - "id": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "type": "basic.input", - "data": { - "name": "1", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 240 - } - }, - { - "id": "569d2a99-51b3-4a38-9b7b-ace665061883", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true - }, - "position": { - "x": 432, - "y": 296 - } - }, - { - "id": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 304 - } - }, - { - "id": "377986eb-1798-42b1-846a-3e33efe71ce4", - "type": "basic.inputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 416, - "y": 360 - } - }, - { - "id": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A1", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 400 - } - }, - { - "id": "0c30aa42-915c-42e9-9179-f46349c9400c", - "type": "basic.output", - "data": { - "name": "", - "range": "[3:0]", - "size": 4 - }, - "position": { - "x": 1256, - "y": 416 - } - }, - { - "id": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B3", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 456, - "y": 464 - } - }, - { - "id": "ea1e0257-805a-4562-9264-66dd07a08022", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "oldBlockColor": "turquoise" - }, - "position": { - "x": 712, - "y": 488 - } - }, - { - "id": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B2", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "turquoise" - }, - "position": { - "x": 464, - "y": 528 - } - }, - { - "id": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "type": "basic.input", - "data": { - "name": "0", - "range": "[3:0]", - "clock": false, - "size": 4 - }, - "position": { - "x": 120, - "y": 544 - } - }, - { - "id": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 560 - } - }, - { - "id": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B1", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 464, - "y": 592 - } - }, - { - "id": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "type": "basic.outputLabel", - "data": { - "blockColor": "fuchsia", - "name": "A0" - }, - "position": { - "x": 720, - "y": 648 - } - }, - { - "id": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "type": "basic.inputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 432, - "y": 648 - } - }, - { - "id": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "type": "basic.outputLabel", - "data": { - "blockColor": "turquoise", - "name": "B0", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 720, - "y": 720 - } - }, - { - "id": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "type": "basic.input", - "data": { - "name": "sel", - "clock": false - }, - "position": { - "x": 104, - "y": 728 - } - }, - { - "id": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "type": "basic.inputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "pins": [ - { - "index": "0", - "name": "NULL", - "value": "NULL" - } - ], - "virtual": true, - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 264, - "y": 728 - } - }, - { - "id": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "type": "basic.outputLabel", - "data": { - "blockColor": "navy", - "name": "sel", - "oldBlockColor": "fuchsia" - }, - "position": { - "x": 712, - "y": 800 - } - }, - { - "id": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 472 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "d933500c-d68a-479f-9e5d-f4fb16510968", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 864, - "y": 704 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "2ddbccd1-2bc6-47b9-9045-24c317b9cd33", - "type": "basic.info", - "data": { - "info": "Channel A", - "readonly": true - }, - "position": { - "x": 304, - "y": 128 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "4593d302-bf1c-414c-917f-e13e667192e3", - "type": "basic.info", - "data": { - "info": "Channel B", - "readonly": true - }, - "position": { - "x": 304, - "y": 480 - }, - "size": { - "width": 144, - "height": 32 - } - }, - { - "id": "3d24183b-338b-439c-aec1-f4a264907b97", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": 216 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "type": "84f0a15761ee8b753f67079819a7614923939472", - "position": { - "x": 1040, - "y": 384 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "type": "d0c4e5ca28edb32eb88f24d610c7a2782d8bc697", - "position": { - "x": 856, - "y": -16 - }, - "size": { - "width": 96, - "height": 96 - } - }, - { - "id": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 288, - "y": 512 - }, - "size": { - "width": 96, - "height": 128 - } - }, - { - "id": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "type": "c4f23ad05c2010ec9bd213c8814c9238873037ae", - "position": { - "x": 280, - "y": 208 - }, - "size": { - "width": 96, - "height": 128 - } - } - ], - "wires": [ - { - "source": { - "block": "08fac044-f451-4fb7-9668-f5bce3b40c2c", - "port": "out" - }, - "target": { - "block": "8c5a78df-4703-4ec5-b5a8-4bc51e280b7f", - "port": "inlabel" - } - }, - { - "source": { - "block": "b88ffc6a-a37e-4e72-9af5-e0e47bb28db3", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "b4691dbc-4f35-4ec6-931f-deb1299ac774", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "569d2a99-51b3-4a38-9b7b-ace665061883", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "377986eb-1798-42b1-846a-3e33efe71ce4", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "f5a71d7b-de20-4527-80c8-0eb20de0dc77" - }, - "target": { - "block": "c8392eb0-afcb-4dc0-8e67-06dff179803a", - "port": "inlabel" - } - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0f7487e5-b070-4277-bba6-acf69934afca" - }, - "target": { - "block": "0a8ebf52-d113-42e8-afc5-b74a9292f193", - "port": "inlabel" - } - }, - { - "source": { - "block": "52e82e71-0cf6-4d15-806e-f9bda2a630c6", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "58eb9009-6044-47e1-be9a-7e4e8fa874ed", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - } - }, - { - "source": { - "block": "ab701d88-141a-437f-bd4a-d89c608d85fb", - "port": "outlabel" - }, - "target": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "ea1e0257-805a-4562-9264-66dd07a08022", - "port": "outlabel" - }, - "target": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - } - }, - { - "source": { - "block": "80a47e76-e2a8-4d42-8e07-7fd40760298a", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "bdc6f92f-aadd-40e2-b0dd-3373df16f979", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "08e7b8aa-60d9-446c-a9c3-b3cd489fe051", - "port": "outlabel" - }, - "target": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "0e0d7d30-23bc-40b3-b71d-57deb9d4436c", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "33072210-9ba0-4659-8339-95952b939e6e" - }, - "target": { - "block": "ce0162a1-eaa9-4835-bac8-e02980d97d84", - "port": "inlabel" - } - }, - { - "source": { - "block": "b32fe65a-108e-4d63-8a3e-c864aba3ab1e", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "08fac044-f451-4fb7-9668-f5bce3b40c2c" - }, - "vertices": [] - }, - { - "source": { - "block": "404ea27a-83cf-4ce3-8d2a-ff0e46dad63f", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "adf3a6ae-71e2-43dd-b504-c2cdbc14dab7" - }, - "vertices": [] - }, - { - "source": { - "block": "e6f8e666-26f0-4b22-a8ff-860b64af3f5d", - "port": "outlabel" - }, - "target": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "d4a339a0-7bdb-4695-8f6b-93ea4a70b36a" - }, - "vertices": [] - }, - { - "source": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "c48c499e-09ea-4666-a5e4-08f15e0ca9c8", - "port": "inlabel" - } - }, - { - "source": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "bbe1895b-be8b-4237-b0d1-ae592e3e6208" - }, - "target": { - "block": "6776605f-93ce-4cae-8606-055bd2415b2d", - "port": "inlabel" - } - }, - { - "source": { - "block": "727ec397-8887-46bc-b79d-ebc0c9dc9dd5", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "969e11ca-69e8-403b-a566-7bf2fbe3a5a8" - }, - "vertices": [ - { - "x": 984, - "y": 472 - } - ] - }, - { - "source": { - "block": "d933500c-d68a-479f-9e5d-f4fb16510968", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "e4111201-8441-4e7d-bcd2-bcf9d265d043" - } - }, - { - "source": { - "block": "3d24183b-338b-439c-aec1-f4a264907b97", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "346b4ae4-4bb6-4845-9c17-3b25e0dde718" - }, - "vertices": [ - { - "x": 976, - "y": 352 - } - ] - }, - { - "source": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "55180947-6349-4a04-a151-ad69ea2b155e" - }, - "target": { - "block": "0c30aa42-915c-42e9-9179-f46349c9400c", - "port": "in" - }, - "size": 4 - }, - { - "source": { - "block": "d8ac6188-7933-496e-a8b2-36a194bc73c4", - "port": "0e6a9a81-8521-4ade-8012-71915b39ae41" - }, - "target": { - "block": "6927d8e6-574b-4e49-a713-3b7efa1039f8", - "port": "6c2aa548-5a4c-4e8d-a56c-a70926b19f18" - } - }, - { - "source": { - "block": "237fb738-6eb3-4656-a741-3dd9dfae70c5", - "port": "out" - }, - "target": { - "block": "a67ad91c-29dc-45b3-af1b-0504c994654f", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - }, - { - "source": { - "block": "8f823359-0f81-4e0d-96d6-b1e8840bae2d", - "port": "out" - }, - "target": { - "block": "8b123927-f2d7-432c-946e-2fc86fa689aa", - "port": "0ebd46a4-769b-45e6-bcaf-e3796264aed3" - }, - "size": 4 - } - ] - } - } - }, - "af4945816b7b0bf62a397343ee5ee1c196f0c9b3": { - "package": { - "name": "not-x16", - "version": "2.0", - "description": "not-x16: 16-bits not gate", - "author": "Juan González", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22317.651%22%20height=%22194.058%22%20version=%221%22%3E%3Cpath%20d=%22M69.246%204l161.86%2093.027-161.86%2093.031V4z%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linejoin=%22round%22/%3E%3Cellipse%20cx=%22253.352%22%20cy=%2296.736%22%20rx=%2221.393%22%20ry=%2221.893%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M4.057%2097.49h65.262m205.796%200h38.48%22%20fill=%22none%22%20stroke=%22#000%22%20stroke-width=%228%22%20stroke-linecap=%22round%22/%3E%3Ctext%20style=%22line-height:125%25%22%20x=%2281.112%22%20y=%22111.734%22%20transform=%22scale(.99532%201.0047)%22%20font-weight=%22400%22%20font-size=%2249.675%22%20font-family=%22sans-serif%22%20letter-spacing=%220%22%20word-spacing=%220%22%20fill=%22#00f%22%3E%3Ctspan%20x=%2281.112%22%20y=%22111.734%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22%20font-weight=%22700%22%3ENot%3C/tspan%3E%3C/text%3E%3C/svg%3E" - }, - "design": { - "graph": { - "blocks": [ - { - "id": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 496, - "y": 80 - } - }, - { - "id": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "type": "basic.input", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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": -16, - "y": 80 - } - }, - { - "id": "e3bb41e3-1944-4946-9675-c2dbe2e49fcf", - "type": "basic.info", - "data": { - "info": "Input", - "readonly": true - }, - "position": { - "x": 24, - "y": 56 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "8408dd5f-945f-4a89-9790-7752813d4e91", - "type": "basic.info", - "data": { - "info": "Output", - "readonly": true - }, - "position": { - "x": 512, - "y": 48 - }, - "size": { - "width": 80, - "height": 40 - } - }, - { - "id": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "type": "basic.code", - "data": { - "ports": { - "in": [ - { - "name": "i", - "range": "[15:0]", - "size": 16 - } - ], - "out": [ - { - "name": "o", - "range": "[15:0]", - "size": 16 - } - ] - }, - "params": [], - "code": "//-- NOT\nassign o = ~i;" - }, - "position": { - "x": 176, - "y": 64 - }, - "size": { - "width": 232, - "height": 96 - } - } - ], - "wires": [ - { - "source": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "o" - }, - "target": { - "block": "d2102e2d-8694-4709-a322-ba6384dcf9c8", - "port": "in" - }, - "size": 16 - }, - { - "source": { - "block": "0c4654ad-3ee0-4dc8-87b2-602b83dff045", - "port": "out" - }, - "target": { - "block": "97b3a651-feab-4f3a-bb00-83317bbd4f78", - "port": "i" - }, - "size": 16 - } - ] - } - } - }, - "500ce5c329eaf974fb5327a00db1e7e9ab6ddf69": { - "package": { - "name": "UINT16-15bit-verilog", - "version": "0.1", - "description": "UINT32-15bit-verilog: Extend a 15-bit unsigned integer to 32-bits. Verilog implementation ", - "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", - "otid": 1621785467119 - }, - "design": { - "graph": { - "blocks": [ - { - "id": "2d39ed05-57ec-45b3-b3b6-1522a135e596", - "type": "basic.output", - "data": { - "name": "", - "virtual": true, - "range": "[15:0]", - "pins": [ - { - "index": "15", - "name": "NULL", - "value": "NULL" - }, - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] - }, - "position": { - "x": 920, - "y": 304 - } - }, - { - "id": "13a4e0ad-5760-4e98-bf2a-7c86f6896b39", - "type": "basic.input", - "data": { - "name": "i", - "virtual": true, - "range": "[14:0]", - "pins": [ - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ], + "source": { + "block": "4f537b92-d51a-4e53-808b-0730bd2424dd", + "port": "664caf9e-5f40-4df4-800a-b626af702e62" + }, + "target": { + "block": "6219285f-76c0-4fdf-8f60-bd5afeef0e52", + "port": "97b51945-d716-4b6c-9db9-970d08541249" + }, + "vertices": [] + } + ] + } + } + }, + "b7f7136a87c607769a64233fd99bc12818a05746": { + "package": { + "name": "TFF-verilog", + "version": "0.4", + "description": "TFF-verilog. System TFF with toggle input: It toogles on every system cycle if the input is active. Verilog implementation", + "author": "Juan González-Gómez (Obijuan)", + "image": "%3Csvg%20width=%22446.564%22%20height=%22323.478%22%20viewBox=%220%200%20118.15346%2085.586967%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2217.105%22%20y=%22102.424%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2217.105%22%20y=%22102.424%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E1%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M103.647%2011.233l8.692-8.353-1.016%2027.43-26.866-1.016%208.24-8.128s-6.32-6.66-17.496-6.773c-11.175-.113-17.948%206.209-17.948%206.209l.113-9.256-6.999-3.048S61.317-.282%2075.88.396c14.561.677%2027.768%2010.837%2027.768%2010.837zM44.599%2074.354l-8.692%208.353%201.016-27.43%2026.866%201.016-8.24%208.128s6.32%206.66%2017.496%206.773c11.175.112%2017.948-6.209%2017.948-6.209l-.113%209.256%206.999%203.048s-10.95%208.58-25.511%207.902c-14.562-.677-27.77-10.837-27.77-10.837z%22%20fill=%22green%22%20stroke=%22#000%22%20stroke-width=%22.716%22/%3E%3Ctext%20style=%22line-height:1.25;-inkscape-font-specification:ubuntu%22%20x=%2291.581%22%20y=%22124.887%22%20font-weight=%22400%22%20font-size=%2243.588%22%20font-family=%22ubuntu%22%20letter-spacing=%220%22%20word-spacing=%220%22%20stroke-width=%222.724%22%20transform=%22translate(3.689%20-56.576)%22%3E%3Ctspan%20x=%2291.581%22%20y=%22124.887%22%20style=%22-inkscape-font-specification:'ubuntu%20Medium'%22%20font-weight=%22500%22%3E0%3C/tspan%3E%3C/text%3E%3Cpath%20d=%22M77.094%2046.485l3.003%2011.933-7.058-10.182%22%20fill=%22#ccc%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M75.915%2040.345l-5.845-10.93%203.91-1.687-.938-2.172-12.672%205.47.938%202.172%203.693-1.594%204.253%2011.738s-2.772%201.786-2.574%204.168c.198%202.383%201.397%202.835%201.203%202.954l14.342-6.211s-.723-2.568-2.38-3.311c-1.657-.743-3.93-.597-3.93-.597z%22%20fill=%22red%22%20stroke=%22#000%22%20stroke-width=%22.716%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cg%20transform=%22matrix(1.18163%200%200%201.18163%20-101.312%20-19.89)%22%20stroke=%22green%22%20stroke-linecap=%22round%22%3E%3Ccircle%20cx=%22100.602%22%20cy=%2273.815%22%20r=%2214.559%22%20fill=%22#ececec%22%20stroke-width=%22.608%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M106.978%2082.142h-3.353V63.316H97.54v18.678h-3.652%22%20fill=%22none%22%20stroke-width=%221.521%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1618503523961 + }, + "design": { + "graph": { + "blocks": [ + { + "id": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "type": "basic.input", + "data": { + "name": "", + "clock": true + }, + "position": { + "x": 328, + "y": -80 + } + }, + { + "id": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "type": "basic.output", + "data": { + "name": "" + }, + "position": { + "x": 904, + "y": -8 + } + }, + { + "id": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", + "type": "basic.input", + "data": { + "name": "", "clock": false }, "position": { - "x": 352, - "y": 304 + "x": 320, + "y": 64 } }, { - "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "id": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "type": "basic.constant", + "data": { + "name": "", + "value": "0", + "local": false + }, + "position": { + "x": 624, + "y": -248 + } + }, + { + "id": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i", - "range": "[14:0]", - "size": 15 + "name": "clk" + }, + { + "name": "t" } ], "out": [ { - "name": "o", - "range": "[15:0]", - "size": 16 + "name": "q" } ] }, - "params": [], - "code": "//-- Number of bits\nlocalparam N = 16;\n\n//-- Extend i with 0s\nassign o = { {(16-N){0}} , i};" + "params": [ + { + "name": "INI" + } + ], + "code": "//-- Initial value\nreg qi = INI;\n\nalways @(posedge clk)\nbegin\n \n //-- check the toogle input\n if (t == 1'b1)\n qi <= ~ qi;\n \nend\n\n//-- Connect the register with the\n//-- output\nassign q = qi;\n" }, "position": { - "x": 512, - "y": 272 + "x": 496, + "y": -120 }, "size": { - "width": 344, - "height": 120 + "width": 352, + "height": 288 } } ], "wires": [ { "source": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "o" + "block": "915bebf3-8f1a-4547-8056-fe3e75c77022", + "port": "constant-out" }, "target": { - "block": "2d39ed05-57ec-45b3-b3b6-1522a135e596", - "port": "in" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "INI" + } + }, + { + "source": { + "block": "ca7c5f10-efb6-43f9-9364-52d751fc0bc6", + "port": "out" }, - "size": 16 + "target": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "clk" + } }, { "source": { - "block": "13a4e0ad-5760-4e98-bf2a-7c86f6896b39", + "block": "fcbd52d3-d1b8-4cd4-befc-e045d20b91e4", "port": "out" }, "target": { - "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", - "port": "i" + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "t" + } + }, + { + "source": { + "block": "60198e6c-e8ec-433b-a4fb-55bed9afcc45", + "port": "q" }, - "size": 15 + "target": { + "block": "4e8afe74-8f38-4873-97ee-f7585d99a4aa", + "port": "in" + } } ] } } }, - "cca3f5efa870625302ad0914956497d4ff3d3aa0": { + "8465270d2dfe3d8f6eb872bf86a1c22e138038cb": { "package": { - "name": "Copy-15-verilog", - "version": "0.2", - "description": "Copy-15: Copy the input wire twice and generate a 15 bits Bus output (Verilog implementation)", + "name": "15-Uint16", + "version": "0.4", + "description": "15-Uint16: 15 bits unsigned integer extension to 16 bits. Verilog implementation", "author": "Juan González-Gómez (Obijuan)", - "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22311.429%22%20height=%22131.811%22%20viewBox=%220%200%2082.398813%2034.875011%22%20id=%22svg840%22%3E%3Cg%20id=%22layer2%22%20transform=%22translate(-33.717%20-91.738)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cpath%20id=%22path865-3-6%22%20d=%22M36.363%20123.968l77.107-.336%22%20stroke=%22green%22%20stroke-width=%225.292%22/%3E%3Cpath%20d=%22M88.632%20114.651l20.928-20.928%22%20id=%22path850%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3Cpath%20d=%22M109.56%20114.651L88.632%2093.723%22%20id=%22path852%22%20stroke=%22#000%22%20stroke-width=%223.969%22/%3E%3C/g%3E%3Cstyle%20id=%22style263%22%3E.st0%7Bdisplay:none%7D.st1%7Bfill:none;stroke:#000;stroke-width:.75;stroke-linejoin:round;stroke-miterlimit:10%7D.st2%7Bfill:#010002%7D%3C/style%3E%3C/svg%3E" + "image": "%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448.598%22%20height=%22127.811%22%20viewBox=%220%200%20118.69152%2033.816643%22%3E%3Cg%20style=%22line-height:1.25%22%20font-weight=%22700%22%20font-size=%2245.504%22%20font-family=%22sans-serif%22%20fill=%22green%22%20stroke-width=%221.138%22%3E%3Cpath%20d=%22M0%200h8.554v19.886q0%204.11%201.333%205.888%201.356%201.755%204.4%201.755%203.066%200%204.399-1.755%201.355-1.778%201.355-5.888V0h8.554v19.886q0%207.043-3.532%2010.487-3.533%203.444-10.776%203.444-7.221%200-10.754-3.444Q0%2026.929%200%2019.886zM36.972%200h8.554v33.172h-8.554zM53.947%200H63.5l12.064%2022.752V0h8.11v33.172h-9.554L62.056%2010.421v22.751h-8.11zM88.119%200h30.573v6.466h-10.999v26.706H99.14V6.466H88.12z%22%20style=%22-inkscape-font-specification:'sans-serif%20Bold'%22/%3E%3C/g%3E%3C/svg%3E", + "otid": 1621785467119 }, "design": { "graph": { "blocks": [ { - "id": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "type": "basic.input", + "id": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "type": "basic.output", "data": { "name": "", - "clock": false + "range": "[15:0]", + "size": 16 }, "position": { - "x": 448, - "y": 176 + "x": 952, + "y": 368 } }, { - "id": "8dbc1d1a-647a-4892-8b61-e6fd6a8db8c3", - "type": "basic.output", + "id": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "type": "basic.input", "data": { "name": "", - "virtual": true, "range": "[14:0]", - "pins": [ - { - "index": "14", - "name": "NULL", - "value": "NULL" - }, - { - "index": "13", - "name": "NULL", - "value": "NULL" - }, - { - "index": "12", - "name": "NULL", - "value": "NULL" - }, - { - "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" - } - ] + "size": 15 }, "position": { - "x": 992, - "y": 176 + "x": 336, + "y": 368 } }, { - "id": "3266f4f1-eba1-4272-a937-4415542dcb7f", + "id": "060b73c2-8fae-4f64-8db2-c8335f464d4c", "type": "basic.code", "data": { "ports": { "in": [ { - "name": "i" + "name": "i", + "range": "[14:0]", + "size": 15 } ], "out": [ { "name": "o", - "range": "[14:0]", - "size": 15 + "range": "[15:0]", + "size": 16 } ] }, "params": [], - "code": "//-- Number of bits\nlocalparam N=15;\n\nassign o = {N{i}};\n" + "code": "//-- Number of input bits\nlocalparam X = 15;\n\n//-- Number of output bits\nlocalparam N = 16;\n\n//-- zeros to add to the input\nwire zeros = {(N-X){1'b0}};\n\n//-- Extend the input with zeros\nassign o = { zeros , i};" }, "position": { - "x": 632, - "y": 144 + "x": 504, + "y": 272 }, "size": { - "width": 288, - "height": 120 + "width": 384, + "height": 248 } } ], "wires": [ { "source": { - "block": "cf3b4c7c-042a-45f7-b958-990d7157f928", - "port": "out" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "o" }, "target": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "i" - } + "block": "e0cb078e-5589-4f38-983f-ff5d02d74932", + "port": "in" + }, + "size": 16 }, { "source": { - "block": "3266f4f1-eba1-4272-a937-4415542dcb7f", - "port": "o" + "block": "418dea9f-f4c9-4a1f-8294-0f6c34e32f1d", + "port": "out" }, "target": { - "block": "8dbc1d1a-647a-4892-8b61-e6fd6a8db8c3", - "port": "in" + "block": "060b73c2-8fae-4f64-8db2-c8335f464d4c", + "port": "i" }, "size": 15 }