1樓:壬宵雨
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity dff_asy is
port (
clock : in std_logic ;--clock
reset : in std_logic ;--reset
dff_in : in std_logic ;--data in
dff_out : out std_logic --data out
);end dff_asy;
architecture rtl of dff_asy is
signal reg_dff_out : std_logic ; -- internal signals
begin
process (clock,reset) begin
if (reset = '1') then -- asynchronous reset
reg_dff_out <= '0';
elsif (clock'event and clock = '1') then
reg_dff_out <= dff_in ;
end if;
end process;
dff_out <= reg_dff_out ;
end rtl;
下面是同步清零的例子:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity dff_syn is
port (
clock : in std_logic ;--clock
reset : in std_logic ;--reset
dff_in : in std_logic ;--data in
dff_out : out std_logic --data out
);end dff_syn;
architecture rtl of dff_syn is
signal reg_dff_out : std_logic ; -- internal signals
begin
process (clock) begin
if (clock'event and clock = '1') then
if (reset) then
reg_dff_out <= '0' ;
else
reg_dff_out <= dff_in ;
end if ;
end if;
end process;
dff_out <= reg_dff_out ;
end rtl;
2樓:風月融
給你個連線看看
3樓:
好容易掙的分啊,直接裝一個軟體ise/quartus,模板裡都有。
用vhdl語言設計一個具有非同步復位功能的8位d觸發器
4樓:
library ieee;
use ieee.std_logic_1164.all;
entity dff8 is
port (clk,clr:in std_logic;
d:in std_logic_vector(7 downto 0);
q:out std_logic_vector(7 downto 0));
end dff8;
architecture bhv of dff8 is
signal q1:std_logic_vector(7 downto 0) :="00000000";
begin
process(clk,clr,q1)
begin
if clr = '1' then
q1<= "00000000";
elsif clk'event and clk='1' then
q1<=d;
end if ;
q<=q1;
end process ;
end bhv;
用vhdl語言分別設計帶同步復位的d觸發器和用vhdl語言分別設計帶同步置位/復位的d觸發器。 10
5樓:空中落英
vhdl語言編寫的帶同步置位/復位的d觸發器:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity trigger_d is
port(clk,d,sreset,sset:in std_logic; --同步復位端sreset,同步置位端sset
q,qf:out std_logic);
end entity;
architecture art of trigger_d isbegin
process(clk,d,sreset,sset)begin
if clk'event and clk='1' thenif sreset='1' then q<='0';qf<='1'; --同步復位端sreset,高電平有效,復位
elsif sset='1' then q<='1';qf<='0'; --同步置位端sset,高電平有效,置位
else q<=d;qf<=not(d);
end if;
end if;
end process;
end art;
6樓:玄鐵重劍
帶同步復位的d觸發器:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity trigger_d is
port(clk,d,sreset:in std_logic; --同步復位端sreset
q,qf:out std_logic);
end entity;
architecture art of trigger_d is
begin
process(clk,d,sreset)
begin
if clk'event and clk='1' then
if sreset='1' then q<='0';qf<='1';
else q<=d;qf<=not(d);
end if;
end if;
end process;
end architecture art;
下一個是帶同步置位/復位的d觸發器:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity trigger_d is
port(clk,d,sreset,sset:in std_logic; --同步復位端sreset,同步置位端sset
q,qf:out std_logic);
end entity;
architecture art of trigger_d is
begin
process(clk,d,sreset,sset)
begin
if clk'event and clk='1' then
if sreset='1' then q<='0';qf<='1'; --同步復位端sreset,高電平有效,復位
elsif sset='1' then q<='1';qf<='0'; --同步置位端sset,高電平有效,置位
else q<=d;qf<=not(d);
end if;
end if;
end process;
end architecture art;
使用vhdl語言設計d觸發器
寫出d觸發器的三種vhdl程式
7樓:匿名使用者
我還沒試過用vhdl畫好d觸發器什麼的電路圖,看看軟體自行生成的程式呢。呵呵
採用 verilog hdl語言設計一個非同步清零,非同步置位d觸發器(需要分頻器,50hz分頻) 20
8樓:
module d(rst1,rst0,clk,in,out);
input rst1,rst0,clk,in;
output out;
reg out;
always@(posedge clk or negedge rst1 or negedge rst0)
begin
if(~rst1) out<=1; //注意下降du沿配套
zhi的條件寫
dao法
else if(~rst0) out<=0; //注意下降沿配套的條件寫法
else out <= in; //直接完成d觸發專器的特性方程就可以了
屬//begin
//if(in) out<=in;
//else out<=out;
//end
endendmodule
用VHDL實現分頻,VHDL編寫分頻器
模n計數器的實現 一般設計中用到計數器時,我們可以呼叫lpm庫中的計數器模組,也可以採用vhdl語言自己設計一個模n計數器。本設計採用vhdl語言設計一個最大模值為16的計數器。輸入埠為 使能訊號en,復位訊號clr和時鐘訊號clk 輸出埠為 qa qb qc qd。其vhdl語言描述略。帶使能控制...
網路程式設計裡的同步和非同步有啥區別的
網路程式設計中,同步的意思是說,進行收發資料,等到資料真正傳送出去或者接受到,才返回 而非同步的意思是,可以把資料傳送到緩衝區立即返回,而傳送成功的訊息是通過事件通知的。非同步可以騰出更多的cpu來處理其他事情,所以非同步的方式比較靈活。執行緒同步是指,多個執行緒協同完成一件工作,一個執行緒需要等待...
用python程式設計求1 ,用python程式設計求1 1 2 1 3 1 4 1 5 累加和,資料項小於0 1時停止
樹不開叉 def summa summ 0 for i in range 1,100 fl 1.0 i if fl 0.1 summ fl else print the sum is summreturn sum summa 注意縮排 def iteritem limit x 1.while 1 v...