From b5d5fb5a05d93bb6ed99f42128fe3882809fff18 Mon Sep 17 00:00:00 2001 From: Erick Date: Tue, 8 Mar 2022 13:54:42 +0100 Subject: [PATCH] created sr, jk and data flipflops --- memory/flipflop/d_flipflop.sv | 15 +++++++++++++++ memory/flipflop/jk_flipflop.sv | 15 +++++++++++++++ memory/flipflop/sr_flipflop.sv | 11 +++++++++++ memory/sr_flipflop.sv | 13 ------------- 4 files changed, 41 insertions(+), 13 deletions(-) create mode 100644 memory/flipflop/d_flipflop.sv create mode 100644 memory/flipflop/jk_flipflop.sv create mode 100644 memory/flipflop/sr_flipflop.sv delete mode 100644 memory/sr_flipflop.sv diff --git a/memory/flipflop/d_flipflop.sv b/memory/flipflop/d_flipflop.sv new file mode 100644 index 0000000..70782b8 --- /dev/null +++ b/memory/flipflop/d_flipflop.sv @@ -0,0 +1,15 @@ +'include "gates/nand3way16.v" + +import sr_flipflop::*; + +package d_flipflop ( + output [15:0]dq, [15:0]dq_compl + input [15:0]d, clk, +); + +nand16(tmp0, d, clk); +nand16(tmp1, clk, tmp0); + +sr_flipflop(dq, dq_compl, tmp0, tmp1); + +endpackage \ No newline at end of file diff --git a/memory/flipflop/jk_flipflop.sv b/memory/flipflop/jk_flipflop.sv new file mode 100644 index 0000000..a470d0e --- /dev/null +++ b/memory/flipflop/jk_flipflop.sv @@ -0,0 +1,15 @@ +'include "gates/nand3way16.v" + +import sr_flipflop::*; + +package jk_flipflop ( + output [15:0]jkq, [15:0]jkq_compl + input [15:0]j, [15:0]k, [15:0]clk //FIXME: is 26bit clock correct? Like can it go only as 0000000000000000 and 1111111111111111? +); + +nand3way16(notS, jkq_compl, j, clk); +nand3way16(notR, jkq, k, clk); + +sr_flipflop(jkq, jkq_compl, notS, notR); + +endpackage \ No newline at end of file diff --git a/memory/flipflop/sr_flipflop.sv b/memory/flipflop/sr_flipflop.sv new file mode 100644 index 0000000..12a9d0a --- /dev/null +++ b/memory/flipflop/sr_flipflop.sv @@ -0,0 +1,11 @@ +'include "gates/nand16.v" + +package sr_flipflop ( + output [15:0]srq, [15:0]srq_compl + input [15:0]s, [15:0]r +); + +nand16 nand0(q, s, q_compl); +nand16 nand1(q_compl, r, q); + +endpackage \ No newline at end of file diff --git a/memory/sr_flipflop.sv b/memory/sr_flipflop.sv deleted file mode 100644 index 8458635..0000000 --- a/memory/sr_flipflop.sv +++ /dev/null @@ -1,13 +0,0 @@ -'include "gates/nand16.v" - -module sr_flipflop ( - input s, r, clk, - output q, q_compl -); - -nand16 nand0(tmp0, s, clk); -nand16 nand1(tmp1, r, clk); -nand16 nand2(q, tmp0, q_compl); -nand16 nand3(q_compl, tmp1, q); - -endmodule \ No newline at end of file