summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYen-Sheng Ho <ysho@berkeley.edu>2017-02-18 09:10:45 -0800
committerYen-Sheng Ho <ysho@berkeley.edu>2017-02-18 09:10:45 -0800
commit16fda0bd24f1d1e4bb6b39cd0f1a545fd096d6c3 (patch)
treef70730bbd3e7fa7483e223918a8d000b8385af93
parent1d3ff5338a0c98f2319578b25f9695c3a326dd9d (diff)
downloadabc-16fda0bd24f1d1e4bb6b39cd0f1a545fd096d6c3.tar.gz
abc-16fda0bd24f1d1e4bb6b39cd0f1a545fd096d6c3.tar.bz2
abc-16fda0bd24f1d1e4bb6b39cd0f1a545fd096d6c3.zip
added a simple example; edited hgignore
-rw-r--r--.hgignore5
-rw-r--r--fsm.v28
2 files changed, 33 insertions, 0 deletions
diff --git a/.hgignore b/.hgignore
index b5fedc7a..f5d4784c 100644
--- a/.hgignore
+++ b/.hgignore
@@ -52,9 +52,14 @@ build/
*.rej
*.orig
+tags
+
syntax: regexp
^libabc.a$
^abc$
^arch_flags$
+
+^cmake
+^cscope
diff --git a/fsm.v b/fsm.v
new file mode 100644
index 00000000..272c4a89
--- /dev/null
+++ b/fsm.v
@@ -0,0 +1,28 @@
+module fsm (out);
+output out;
+
+wire [2:0] ns;
+wire [2:0] cs;
+
+always @( ns or cs )
+begin
+case (cs)
+ 0 : ns = 3'b010;
+ 1 : ns = 3'b001;
+ 2 : ns = 3'b000;
+ 3 : ns = 3'b101;
+ 4 : ns = 3'b001;
+ 5 : ns = 3'b111;
+ 6 : ns = 3'b001;
+ 7 : ns = 3'b110;
+endcase
+end
+
+assign out = cs == 3'b001;
+
+wire [2:0] const0 = 3'h0;
+
+
+CPL_FF#3 ff3 ( .q(cs), .qbar(), .d(ns), .clk(), .arst(), .arstval(const0) );
+
+endmodule