diff options
Diffstat (limited to 'semestre 3/architecture des ordinateurs/tme/tme8')
| -rw-r--r-- | semestre 3/architecture des ordinateurs/tme/tme8/tme.circ | 516 |
1 files changed, 516 insertions, 0 deletions
diff --git a/semestre 3/architecture des ordinateurs/tme/tme8/tme.circ b/semestre 3/architecture des ordinateurs/tme/tme8/tme.circ new file mode 100644 index 0000000..5b005ee --- /dev/null +++ b/semestre 3/architecture des ordinateurs/tme/tme8/tme.circ @@ -0,0 +1,516 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<project source="4.0.0" version="1.0"> + This file is intended to be loaded by Logisim-evolution v4.0.0(https://github.com/logisim-evolution/). + + <lib desc="#Wiring" name="0"> + <tool name="Pin"> + <a name="appearance" val="classic"/> + </tool> + </lib> + <lib desc="#Gates" name="1"/> + <lib desc="#Plexers" name="2"/> + <lib desc="#Arithmetic" name="3"/> + <lib desc="#Memory" name="4"/> + <lib desc="#I/O" name="5"/> + <lib desc="#TTL" name="6"/> + <lib desc="#TCL" name="7"/> + <lib desc="#Base" name="8"/> + <lib desc="#BFH-Praktika" name="9"/> + <lib desc="#Input/Output-Extra" name="10"/> + <lib desc="#Soc" name="11"/> + <main name="main"/> + <options> + <a name="gateUndefined" val="ignore"/> + <a name="simlimit" val="1000"/> + <a name="simrand" val="0"/> + </options> + <mappings> + <tool lib="8" map="Button2" name="Poke Tool"/> + <tool lib="8" map="Button3" name="Menu Tool"/> + <tool lib="8" map="Ctrl Button1" name="Menu Tool"/> + </mappings> + <toolbar> + <tool lib="8" name="Poke Tool"/> + <tool lib="8" name="Edit Tool"/> + <tool lib="8" name="Wiring Tool"/> + <tool lib="8" name="Text Tool"/> + <sep/> + <tool lib="0" name="Pin"/> + <tool lib="0" name="Pin"> + <a name="facing" val="west"/> + <a name="type" val="output"/> + </tool> + <sep/> + <tool lib="1" name="NOT Gate"/> + <tool lib="1" name="AND Gate"/> + <tool lib="1" name="OR Gate"/> + <tool lib="1" name="XOR Gate"/> + <tool lib="1" name="NAND Gate"/> + <tool lib="1" name="NOR Gate"/> + <sep/> + <tool lib="4" name="D Flip-Flop"/> + <tool lib="4" name="Register"/> + </toolbar> + <circuit name="main"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="main"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(260,480)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="b"/> + </comp> + <comp lib="0" loc="(270,340)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a"/> + </comp> + <comp lib="0" loc="(650,400)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="type" val="output"/> + </comp> + <comp lib="1" loc="(340,480)" name="NOT Gate"/> + <comp lib="1" loc="(350,330)" name="NOT Gate"/> + <comp lib="1" loc="(410,350)" name="AND Gate"/> + <comp lib="1" loc="(410,460)" name="AND Gate"/> + <comp lib="1" loc="(550,400)" name="OR Gate"/> + <comp lib="8" loc="(510,310)" name="Text"> + <a name="text" val="mon_xor"/> + </comp> + <wire from="(260,480)" to="(290,480)"/> + <wire from="(270,340)" to="(280,340)"/> + <wire from="(280,340)" to="(280,440)"/> + <wire from="(280,340)" to="(320,340)"/> + <wire from="(280,440)" to="(360,440)"/> + <wire from="(290,370)" to="(290,480)"/> + <wire from="(290,370)" to="(360,370)"/> + <wire from="(290,480)" to="(310,480)"/> + <wire from="(320,330)" to="(320,340)"/> + <wire from="(340,480)" to="(360,480)"/> + <wire from="(350,330)" to="(360,330)"/> + <wire from="(410,350)" to="(500,350)"/> + <wire from="(410,420)" to="(410,460)"/> + <wire from="(410,420)" to="(500,420)"/> + <wire from="(500,350)" to="(500,380)"/> + <wire from="(550,400)" to="(650,400)"/> + </circuit> + <circuit name="mux2"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="mux2"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(250,80)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> + <a name="label" val="i"/> + </comp> + <comp lib="0" loc="(460,250)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(90,200)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a"/> + </comp> + <comp lib="0" loc="(90,310)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="b"/> + </comp> + <comp lib="1" loc="(150,160)" name="NOT Gate"/> + <comp lib="1" loc="(210,180)" name="AND Gate"/> + <comp lib="1" loc="(210,290)" name="AND Gate"/> + <comp lib="1" loc="(350,240)" name="OR Gate"/> + <wire from="(100,120)" to="(100,160)"/> + <wire from="(100,120)" to="(250,120)"/> + <wire from="(100,160)" to="(100,270)"/> + <wire from="(100,160)" to="(120,160)"/> + <wire from="(100,270)" to="(160,270)"/> + <wire from="(150,160)" to="(160,160)"/> + <wire from="(210,180)" to="(300,180)"/> + <wire from="(210,290)" to="(300,290)"/> + <wire from="(250,80)" to="(250,120)"/> + <wire from="(300,180)" to="(300,220)"/> + <wire from="(300,260)" to="(300,290)"/> + <wire from="(350,240)" to="(460,240)"/> + <wire from="(460,240)" to="(460,250)"/> + <wire from="(90,200)" to="(160,200)"/> + <wire from="(90,310)" to="(160,310)"/> + </circuit> + <circuit name="mux4bits"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="mux4bits"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(180,230)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="i"/> + </comp> + <comp lib="0" loc="(310,560)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a3"/> + </comp> + <comp lib="0" loc="(310,580)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="b3"/> + </comp> + <comp lib="0" loc="(320,410)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a2"/> + </comp> + <comp lib="0" loc="(320,430)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="b2"/> + </comp> + <comp lib="0" loc="(330,260)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a1"/> + </comp> + <comp lib="0" loc="(340,120)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="b0"/> + </comp> + <comp lib="0" loc="(340,280)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="b1"/> + </comp> + <comp lib="0" loc="(340,70)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a0"/> + </comp> + <comp lib="0" loc="(670,210)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="s0"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(670,240)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="s1"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(670,270)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="s2"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(670,300)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="s3"/> + <a name="type" val="output"/> + </comp> + <comp loc="(530,540)" name="mux2"/> + <comp loc="(540,390)" name="mux2"/> + <comp loc="(560,240)" name="mux2"/> + <comp loc="(560,50)" name="mux2"/> + <wire from="(180,230)" to="(200,230)"/> + <wire from="(200,230)" to="(200,390)"/> + <wire from="(200,230)" to="(340,230)"/> + <wire from="(200,390)" to="(200,540)"/> + <wire from="(200,390)" to="(320,390)"/> + <wire from="(200,50)" to="(200,230)"/> + <wire from="(200,50)" to="(340,50)"/> + <wire from="(200,540)" to="(310,540)"/> + <wire from="(330,260)" to="(340,260)"/> + <wire from="(340,230)" to="(340,240)"/> + <wire from="(340,90)" to="(340,120)"/> + <wire from="(530,480)" to="(530,540)"/> + <wire from="(530,480)" to="(640,480)"/> + <wire from="(540,390)" to="(590,390)"/> + <wire from="(560,240)" to="(670,240)"/> + <wire from="(560,50)" to="(670,50)"/> + <wire from="(590,270)" to="(590,390)"/> + <wire from="(590,270)" to="(670,270)"/> + <wire from="(640,300)" to="(640,480)"/> + <wire from="(640,300)" to="(670,300)"/> + <wire from="(670,50)" to="(670,210)"/> + </circuit> + <circuit name="mux4in"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="mux4in"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(200,160)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="a"/> + </comp> + <comp lib="0" loc="(200,180)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="b"/> + </comp> + <comp lib="0" loc="(200,260)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="c"/> + </comp> + <comp lib="0" loc="(200,280)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="d"/> + </comp> + <comp lib="0" loc="(470,90)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="i1"/> + </comp> + <comp lib="0" loc="(710,190)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(80,240)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="i0"/> + </comp> + <comp loc="(420,140)" name="mux2"/> + <comp loc="(420,240)" name="mux2"/> + <comp loc="(710,190)" name="mux2"/> + <wire from="(420,140)" to="(450,140)"/> + <wire from="(420,240)" to="(490,240)"/> + <wire from="(450,140)" to="(450,210)"/> + <wire from="(450,210)" to="(490,210)"/> + <wire from="(470,190)" to="(490,190)"/> + <wire from="(470,90)" to="(470,190)"/> + <wire from="(490,230)" to="(490,240)"/> + <wire from="(80,140)" to="(200,140)"/> + <wire from="(80,140)" to="(80,240)"/> + <wire from="(80,240)" to="(200,240)"/> + </circuit> + <circuit name="add1"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="add1"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(140,200)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="A"/> + </comp> + <comp lib="0" loc="(140,260)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="B"/> + </comp> + <comp lib="0" loc="(140,340)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="Cin"/> + </comp> + <comp lib="0" loc="(410,220)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="S"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(460,110)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="Cout"/> + <a name="type" val="output"/> + </comp> + <comp lib="1" loc="(240,80)" name="AND Gate"/> + <comp lib="1" loc="(270,220)" name="XOR Gate"/> + <comp lib="1" loc="(370,140)" name="AND Gate"/> + <comp lib="1" loc="(390,320)" name="XOR Gate"/> + <comp lib="1" loc="(460,110)" name="OR Gate"/> + <wire from="(140,200)" to="(210,200)"/> + <wire from="(140,260)" to="(180,260)"/> + <wire from="(140,340)" to="(310,340)"/> + <wire from="(140,60)" to="(140,200)"/> + <wire from="(140,60)" to="(190,60)"/> + <wire from="(180,100)" to="(180,240)"/> + <wire from="(180,100)" to="(190,100)"/> + <wire from="(180,240)" to="(180,260)"/> + <wire from="(180,240)" to="(210,240)"/> + <wire from="(240,80)" to="(410,80)"/> + <wire from="(270,220)" to="(280,220)"/> + <wire from="(280,120)" to="(280,220)"/> + <wire from="(280,120)" to="(320,120)"/> + <wire from="(280,220)" to="(330,220)"/> + <wire from="(310,160)" to="(310,340)"/> + <wire from="(310,160)" to="(320,160)"/> + <wire from="(310,340)" to="(330,340)"/> + <wire from="(330,220)" to="(330,300)"/> + <wire from="(370,140)" to="(410,140)"/> + <wire from="(390,220)" to="(390,320)"/> + <wire from="(390,220)" to="(410,220)"/> + <wire from="(410,130)" to="(410,140)"/> + <wire from="(410,80)" to="(410,90)"/> + </circuit> + <circuit name="add4"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="add4"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(1190,850)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="S0"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(1200,730)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="CF"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(1200,790)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="OV"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(1220,850)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="S1"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(1250,850)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="S2"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(1280,850)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="north"/> + <a name="label" val="S3"/> + <a name="type" val="output"/> + </comp> + <comp lib="0" loc="(150,230)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> + </comp> + <comp lib="0" loc="(60,120)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="B2"/> + </comp> + <comp lib="0" loc="(60,150)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="B3"/> + </comp> + <comp lib="0" loc="(60,60)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="B0"/> + </comp> + <comp lib="0" loc="(60,90)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="B1"/> + </comp> + <comp lib="0" loc="(70,780)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="A0"/> + </comp> + <comp lib="0" loc="(70,810)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="A1"/> + </comp> + <comp lib="0" loc="(70,840)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="A2"/> + </comp> + <comp lib="0" loc="(70,870)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="A3"/> + </comp> + <comp lib="1" loc="(1160,790)" name="XOR Gate"/> + <comp lib="1" loc="(190,490)" name="XOR Gate"> + <a name="facing" val="south"/> + </comp> + <comp lib="1" loc="(450,360)" name="XOR Gate"/> + <comp lib="1" loc="(50,510)" name="XOR Gate"> + <a name="facing" val="south"/> + </comp> + <comp lib="1" loc="(820,440)" name="XOR Gate"/> + <comp loc="(1260,580)" name="add1"/> + <comp loc="(400,700)" name="add1"/> + <comp loc="(680,660)" name="add1"/> + <comp loc="(970,620)" name="add1"/> + <wire from="(100,270)" to="(100,740)"/> + <wire from="(100,270)" to="(150,270)"/> + <wire from="(100,60)" to="(100,230)"/> + <wire from="(100,740)" to="(180,740)"/> + <wire from="(1010,620)" to="(1010,800)"/> + <wire from="(1010,620)" to="(1040,620)"/> + <wire from="(1010,800)" to="(1090,800)"/> + <wire from="(1040,440)" to="(1040,580)"/> + <wire from="(1070,680)" to="(1070,730)"/> + <wire from="(1070,680)" to="(1290,680)"/> + <wire from="(1070,730)" to="(1070,770)"/> + <wire from="(1070,730)" to="(1200,730)"/> + <wire from="(1070,770)" to="(1100,770)"/> + <wire from="(1090,800)" to="(1090,810)"/> + <wire from="(1090,810)" to="(1100,810)"/> + <wire from="(1160,790)" to="(1200,790)"/> + <wire from="(1220,830)" to="(1220,850)"/> + <wire from="(1250,820)" to="(1250,850)"/> + <wire from="(1260,580)" to="(1290,580)"/> + <wire from="(1260,600)" to="(1280,600)"/> + <wire from="(1280,600)" to="(1280,850)"/> + <wire from="(1290,580)" to="(1290,680)"/> + <wire from="(150,230)" to="(150,240)"/> + <wire from="(150,240)" to="(150,270)"/> + <wire from="(150,240)" to="(320,240)"/> + <wire from="(150,270)" to="(170,270)"/> + <wire from="(170,270)" to="(170,430)"/> + <wire from="(170,430)" to="(180,430)"/> + <wire from="(180,690)" to="(180,700)"/> + <wire from="(190,490)" to="(190,660)"/> + <wire from="(190,660)" to="(460,660)"/> + <wire from="(210,90)" to="(210,430)"/> + <wire from="(30,230)" to="(100,230)"/> + <wire from="(30,230)" to="(30,450)"/> + <wire from="(30,450)" to="(40,450)"/> + <wire from="(320,240)" to="(320,380)"/> + <wire from="(320,240)" to="(600,240)"/> + <wire from="(320,380)" to="(390,380)"/> + <wire from="(380,120)" to="(380,340)"/> + <wire from="(380,340)" to="(390,340)"/> + <wire from="(400,700)" to="(460,700)"/> + <wire from="(400,720)" to="(400,850)"/> + <wire from="(400,850)" to="(1190,850)"/> + <wire from="(430,680)" to="(430,810)"/> + <wire from="(430,680)" to="(460,680)"/> + <wire from="(450,360)" to="(550,360)"/> + <wire from="(50,510)" to="(50,690)"/> + <wire from="(50,690)" to="(180,690)"/> + <wire from="(550,360)" to="(550,580)"/> + <wire from="(550,580)" to="(750,580)"/> + <wire from="(60,120)" to="(380,120)"/> + <wire from="(60,150)" to="(760,150)"/> + <wire from="(60,60)" to="(100,60)"/> + <wire from="(60,90)" to="(210,90)"/> + <wire from="(600,240)" to="(600,460)"/> + <wire from="(600,460)" to="(760,460)"/> + <wire from="(680,660)" to="(750,660)"/> + <wire from="(680,680)" to="(750,680)"/> + <wire from="(70,270)" to="(100,270)"/> + <wire from="(70,270)" to="(70,450)"/> + <wire from="(70,780)" to="(80,780)"/> + <wire from="(70,810)" to="(430,810)"/> + <wire from="(70,840)" to="(720,840)"/> + <wire from="(70,870)" to="(990,870)"/> + <wire from="(720,640)" to="(720,840)"/> + <wire from="(720,640)" to="(750,640)"/> + <wire from="(750,580)" to="(750,620)"/> + <wire from="(750,680)" to="(750,830)"/> + <wire from="(750,830)" to="(1220,830)"/> + <wire from="(760,150)" to="(760,420)"/> + <wire from="(80,720)" to="(180,720)"/> + <wire from="(80,720)" to="(80,780)"/> + <wire from="(820,440)" to="(1040,440)"/> + <wire from="(970,620)" to="(1010,620)"/> + <wire from="(970,640)" to="(970,820)"/> + <wire from="(970,820)" to="(1250,820)"/> + <wire from="(990,600)" to="(1040,600)"/> + <wire from="(990,600)" to="(990,870)"/> + </circuit> + <circuit name="oppose4"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="oppose4"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + </circuit> +</project> |
