diff options
Diffstat (limited to 'chips/Bit.hdl')
-rw-r--r-- | chips/Bit.hdl | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/chips/Bit.hdl b/chips/Bit.hdl new file mode 100644 index 0000000..52e0539 --- /dev/null +++ b/chips/Bit.hdl @@ -0,0 +1,21 @@ +// This file is part of www.nand2tetris.org
+// and the book "The Elements of Computing Systems"
+// by Nisan and Schocken, MIT Press.
+// File name: projects/03/a/Bit.hdl
+
+/**
+ * 1-bit register:
+ * If load[t] == 1 then out[t+1] = in[t]
+ * else out does not change (out[t+1] = out[t])
+ */
+
+CHIP Bit {
+ IN in, load;
+ OUT out;
+
+ PARTS:
+ // Put your code here:
+ Mux (a=dffout, b=in, sel=load, out=muxout);
+ DFF (in=muxout, out=dffout);
+ Or (a=dffout, b=dffout, out=out);
+}
|