⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smtr.vhd

📁 Actel Fusion System Management Development Kit UART Example. Contains Libero design using CoreABC. P
💻 VHD
📖 第 1 页 / 共 2 页
字号:
gxkgtngfhqr,vmpskspphnb,cpwfrthtnfr,sxrhkdkngbh,fjsjhgxtkfv,hnbsspwxkpd)
variable nqffhwhjghm:std_logic_vector(4 downto 0);begin
nqffhwhjghm:=fjsjhgxtkfv&cpwfrthtnfr&gxkgtngfhqr&fdwkpqztzkr&xjrbtnwdszs;case
nqffhwhjghm is when "00001"=>dttrrgvsnmg<=zgnrsfkdbqw(0);when
"00010"=>dttrrgvsnmg<=vgdscntczht;when "00100"=>dttrrgvsnmg<=vmpskspphnb;when
"01000"=>dttrrgvsnmg<=sxrhkdkngbh;when "10000"=>dttrrgvsnmg<=hnbsspwxkpd;when
others=>dttrrgvsnmg<=jnfrmfqggmk;end case;end process vnjtgtptszx;process(
djmcnprrmvb,hpqvbfpswtk)begin if hpqvbfpswtk='0' then jnfrmfqggmk<='0';elsif
rising_edge(djmcnprrmvb)then jnfrmfqggmk<=dttrrgvsnmg;end if;end process;
mpdmwvwvmgs<=hnbsspwxkpd and cvpkmgjqwzb;qfgwvhsgqst<=hnbsspwxkpd and not(
cvpkmgjqwzb);vgdscntczht<=jnfrmfqggmk or cvpkmgjqwzb;vmpskspphnb<=jnfrmfqggmk
or not(cvpkmgjqwzb);rxhtxbbkhjf<=hnbsspwxkpd and jnfrmfqggmk;
sxrhkdkngbh<=hnbsspwxkpd or jnfrmfqggmk;vdsdnrcxgvw<="000"&phrnkhgdbnj&'0';
drwrxhmtwrc<="000"&phrnkhgdbnj&'1';brxxctcvrmh:process(djmcnprrmvb,hpqvbfpswtk)
begin if hpqvbfpswtk='0' then qgnzcpmbksd<=(others=>'0');elsif rising_edge(
djmcnprrmvb)then if wjpccrvpdms='1' or gbzdgjmckpp='1' then
qgnzcpmbksd<=vdsdnrcxgvw;elsif hfnznbmwdbg='1' then qgnzcpmbksd<=drwrxhmtwrc;
else if zzcdvnbsprb='1' then qgnzcpmbksd<=thsjqmjnffp;elsif jvxfmjbzjmc='1'
then qgnzcpmbksd<=std_logic_vector(unsigned(qgnzcpmbksd)+ 1);end if;end if;end
if;end process brxxctcvrmh;xmqhrfdbnvv<='1' when qgnzcpmbksd=nhjqdsptgfp else
'0';zpddcbdtgjx:if cvczfvkpmqh>9 generate process(djmcnprrmvb,hpqvbfpswtk)begin
if hpqvbfpswtk='0' then mwwwwqsdrms<=(others=>'0');nqhzsnspnjx<=(others=>'0');
elsif rising_edge(djmcnprrmvb)then if gjdrndrcvkr='1' then
mwwwwqsdrms<=fwwttwfqzbg;end if;if wjpccrvpdms='1' or hfnznbmwdbg='1' then
nqhzsnspnjx<=(others=>'0');else if vxwrrdhrwzp='1' then
nqhzsnspnjx<=mwwwwqsdrms;elsif xmqhrfdbnvv='1' and jvxfmjbzjmc='1' then
nqhzsnspnjx<=std_logic_vector(unsigned(nqhzsnspnjx)+ 1);end if;end if;end if;
end process;qsmttxbhpgn<=nqhzsnspnjx(cvczfvkpmqh-10 downto 0)&qgnzcpmbksd;end
generate;fxvzwwstggq:if cvczfvkpmqh<10 generate mwwwwqsdrms<=(others=>'0');
qsmttxbhpgn<=qgnzcpmbksd;nqhzsnspnjx<=(others=>'0');end generate;process(
djmcnprrmvb,hpqvbfpswtk)begin if hpqvbfpswtk='0' then rjhhzsggrtr<=(others=>'0')
;elsif rising_edge(djmcnprrmvb)then if zfgtfxdvzvc='1' then
rjhhzsggrtr<=xgnxxpdktqq;end if;end if;end process;mtbpddbcfnz:if xkcbxcnxxhg>9
generate process(djmcnprrmvb,hpqvbfpswtk)begin if hpqvbfpswtk='0' then
strbgbnthfj<=(others=>'0');elsif rising_edge(djmcnprrmvb)then if
rhzdqmbwsdd='1' then strbgbnthfj<=whzfpthqmgz;end if;end if;end process;
fjznqcrvpff<=strbgbnthfj(xkcbxcnxxhg-10 downto 0)&rjhhzsggrtr;end generate;
bzmqmncttng:if xkcbxcnxxhg<10 generate fjznqcrvpff<=rjhhzsggrtr;strbgbnthfj<=(
others=>'0');end generate;process(frcskdnwvmx,thsjqmjnffp,wjpccrvpdms,
fkjmfwsgfmv,hnbsspwxkpd,jnfrmfqggmk,zzrhmbvmjcf,dvqzjxhqhrh,mwwwwqsdrms)begin
pstdkkzgbgr<=frcskdnwvmx;nfzjqqfddbb<='1';cvjkzwfgfxd<='1';
bjhvcvnjcsg<=thsjqmjnffp;jvxfmjbzjmc<='0';gjdrndrcvkr<='0';vxwrrdhrwzp<='0';
zzcdvnbsprb<='0';pwgctrqbjqq<='0';zrwhskvshjw<='0';zsxdfhnrkrg<='0';
tbbdzwmpmht<='0';dxqdbrvdqqj<='0';rhzdqmbwsdd<='0';bnxqxhthfkm<='0';
xvghwqhtwrc<='0';fdwkpqztzkr<='0';gxkgtngfhqr<='0';ffqqvqhktvc<='0';
cpwfrthtnfr<='0';fjsjhgxtkfv<='0';gbzdgjmckpp<='0';hfnznbmwdbg<='0';
pwsmjbnvbmm<='0';zfgtfxdvzvc<='0';hjwgppzxqgk<='0';zcmhpccwtzh<='0';
xjrbtnwdszs<='0';xqshddsxjxq<='0';nwjvqqsgrjz<='0';case frcskdnwvmx is when
tddtwhmsmxw=>if wjpccrvpdms='1' then nwjvqqsgrjz<='1';pstdkkzgbgr<=csrjrbfvktn;
else pstdkkzgbgr<=tddtwhmsmxw;end if;when csrjrbfvktn=>nfzjqqfddbb<='0';
jvxfmjbzjmc<='1';pstdkkzgbgr<=vrqwnsvfhbf;when vrqwnsvfhbf=>nfzjqqfddbb<='0';
gjdrndrcvkr<='1';pstdkkzgbgr<=tcngxxfgmdg;when tcngxxfgmdg=>vxwrrdhrwzp<='1';
zzcdvnbsprb<='1';pstdkkzgbgr<=vwzxznxmxjj;when vwzxznxmxjj=>nfzjqqfddbb<='0';
jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when bfsztxmjbwz=>case fkjmfwsgfmv is
when twqmbkvsqjv=>if hnbsspwxkpd='0' then nfzjqqfddbb<='0';gjdrndrcvkr<='1';
pstdkkzgbgr<=tcngxxfgmdg;else nfzjqqfddbb<='0';jvxfmjbzjmc<='1';
pstdkkzgbgr<=vwzxznxmxjj;end if;when ffskdxgczkf=>if jnfrmfqggmk='1' then
nfzjqqfddbb<='0';gjdrndrcvkr<='1';pstdkkzgbgr<=tcngxxfgmdg;else
nfzjqqfddbb<='0';jvxfmjbzjmc<='1';pstdkkzgbgr<=vwzxznxmxjj;end if;when
jwgwqvwgzqc=>pwgctrqbjqq<='1';nfzjqqfddbb<='0';jvxfmjbzjmc<='1';
pstdkkzgbgr<=bfsztxmjbwz;when hdmrhsdqkpf=>zrwhskvshjw<='1';nfzjqqfddbb<='0';
jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when vfhwbpmxnhg=>zsxdfhnrkrg<='1';
nfzjqqfddbb<='0';jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when
hjsptcsxwwj=>tbbdzwmpmht<='1';nfzjqqfddbb<='0';jvxfmjbzjmc<='1';
pstdkkzgbgr<=bfsztxmjbwz;when qkfdnddgfnr=>dxqdbrvdqqj<='1';nfzjqqfddbb<='0';
jvxfmjbzjmc<='1';pstdkkzgbgr<=ncvfznsdsmv;when hvdtwfkzgjf=>rhzdqmbwsdd<='1';
nfzjqqfddbb<='0';jvxfmjbzjmc<='1';pstdkkzgbgr<=nksjwxsrvfg;when
tgmgxbkhgvv=>bnxqxhthfkm<='1';nfzjqqfddbb<='0';jvxfmjbzjmc<='1';
pstdkkzgbgr<=bfsztxmjbwz;when mrkkbfgjnsm=>xvghwqhtwrc<='1';nfzjqqfddbb<='0';
jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when fqsggvsnbpw=>fdwkpqztzkr<='1';
nfzjqqfddbb<='0';jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when
vkzrtdvqxtm=>gxkgtngfhqr<='1';nfzjqqfddbb<='0';jvxfmjbzjmc<='1';
pstdkkzgbgr<=bfsztxmjbwz;when cprxxpgqtzv=>case zzrhmbvmjcf is when
gwcnpmdcdgf=>ffqqvqhktvc<='1';when cxqfrrsmjms=>cpwfrthtnfr<='1';when
others=>fjsjhgxtkfv<='1';end case;nfzjqqfddbb<='0';jvxfmjbzjmc<='1';
pstdkkzgbgr<=bfsztxmjbwz;when bzfzwfqrsfh=>nfzjqqfddbb<='0';gjdrndrcvkr<='1';
hfnznbmwdbg<='1';pstdkkzgbgr<=whzkgttntpq;when others=>jvxfmjbzjmc<='1';
pstdkkzgbgr<=vwzxznxmxjj;end case;when ncvfznsdsmv=>pwsmjbnvbmm<='1';
nfzjqqfddbb<='0';jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when
nksjwxsrvfg=>zfgtfxdvzvc<='1';pstdkkzgbgr<=jhdgkzrksxb;when
jhdgkzrksxb=>hjwgppzxqgk<='1';pstdkkzgbgr<=mxpxttqxdhv;when mxpxttqxdhv=>if
dvqzjxhqhrh='0' then zcmhpccwtzh<='1';else xjrbtnwdszs<='1';end if;
nfzjqqfddbb<='0';jvxfmjbzjmc<='1';pstdkkzgbgr<=bfsztxmjbwz;when
whzkgttntpq=>nfzjqqfddbb<='0';cvjkzwfgfxd<='0';bjhvcvnjcsg<=thsjqmjnffp;
gbzdgjmckpp<='1';pstdkkzgbgr<=pgtwqqmcgdx;when pgtwqqmcgdx=>nfzjqqfddbb<='0';
cvjkzwfgfxd<='0';bjhvcvnjcsg<=gwmqzbkfvkx&mwwwwqsdrms;xqshddsxjxq<='1';
pstdkkzgbgr<=tddtwhmsmxw;end case;end process;hqmqdkzbnrr<=sppmwdzsssj;process(
djmcnprrmvb,hpqvbfpswtk)begin if hpqvbfpswtk='0' then frcskdnwvmx<=tddtwhmsmxw;
elsif rising_edge(djmcnprrmvb)then if hqmqdkzbnrr='1' then
frcskdnwvmx<=pstdkkzgbgr;else frcskdnwvmx<=tddtwhmsmxw;end if;end if;end
process;process(djmcnprrmvb,hpqvbfpswtk)begin if hpqvbfpswtk='0' then
thrxvbszptn<='0';elsif rising_edge(djmcnprrmvb)then thrxvbszptn<=xqshddsxjxq;
end if;end process;process(djmcnprrmvb,hpqvbfpswtk)begin if hpqvbfpswtk='0'
then zzzxtvvjqhf<='0';elsif rising_edge(djmcnprrmvb)then if xqshddsxjxq='1' or
sppmwdzsssj='0' then zzzxtvvjqhf<='0';elsif nwjvqqsgrjz='1' then
zzzxtvvjqhf<='1';end if;end if;end process;zzhpvrjsvfq<=thrxvbszptn;
xdjpqrrmkhk<=zzzxtvvjqhf;fjxrvdqhdqm<=mwzbqqvzwjt;tvtbbxkbhjr<=fjznqcrvpff;
hcrjtrhwvbj<=hjwgppzxqgk;vkmkdwnprxg<=qsmttxbhpgn;smjmfvmgvmf<=cvjkzwfgfxd;
bqhmpqxgttc<=nfzjqqfddbb;gbxmbbjwptj<=bjhvcvnjcsg;bqbvkjfbxkr:if fnscgtbnskd=1
generate svfszvvwxqd<=fctrrrgrnzt when sppmwdzsssj='0' else kftcmqgpwdb;
fgbkzdqjprd<=not qgpxkqfdsgs when sppmwdzsssj='0' else '0' when swwxrvfdnmg='1'
else '1';end generate;bspqqgczscr:if fnscgtbnskd=0 generate
svfszvvwxqd<=fctrrrgrnzt;fgbkzdqjprd<=not qgpxkqfdsgs when sppmwdzsssj='0' else
'1';end generate;cnwzzrhdsqv<=not qgpxkqfdsgs when sppmwdzsssj='0' else '1';
qwfrxhqbhft<=wkjnqmhbcwj;jzsfkrwzvsw<=not sppmwdzsssj;bppqndbbfvm<='1' when
smjmfvmgvmf='0' and bqhmpqxgttc='0' else '0';djmcnprrmvb<=jktbwpsfwwq;
hpqvbfpswtk<=gfrqwfndskc;phrnkhgdbnj<=kpffvbpxmsf;wjpccrvpdms<=txjjszxznxd;
zszmcgpbgkw<=xdjpqrrmkhk;dmrgcpvxzhk<=zzhpvrjsvfq;fzffhdchtwx<=svfntzchvmh;
nvpcwbhffsn<=fjxrvdqhdqm;fctrrrgrnzt<=rthvrwwpqpk;qgpxkqfdsgs<=rbvjpdddhcz;
wkjnqmhbcwj<=xtfkmfbzksq;sppmwdzsssj<=hgtrcfcxkrb;kftcmqgpwdb<=qbrqxpmkpsw;
swwxrvfdnmg<=nktsnhmjrbx;rbkmxbvpcdx<=jzsfkrwzvsw;zngtgckbfnx<=tvtbbxkbhjr;
mpnqskgzxzf<=hcrjtrhwvbj;zgnrsfkdbqw<=qxzrwpjhcww;zdbgxnzghqv<=dnmrkvrtbjn;
kxzjqrqjbxm<=svfszvvwxqd;ngrmnspbvxf<=cnwzzrhdsqv;hxqsbsdhfvm<=fgbkzdqjprd;
mvbwzprdfrk<=qwfrxhqbhft;dtdngjrdwms<=vkmkdwnprxg;ndngwnmwgbm<=smjmfvmgvmf;
svpbmqwvncp<=bqhmpqxgttc;jfkkdmfhcdn<=gbxmbbjwptj;thsjqmjnffp<=tpxkpvnpvvn;
xgnmbzmtzbb<=bppqndbbfvm;end djzfpsxghmt;library ieee;use
ieee.std_logic_1164.all;use ieee.numeric_std.all;entity SMTR is generic(
GPI_BITS:integer:=0;GPO_BITS:integer:=0;ALLOW_USER_TR:integer:=1;
EV_ASIZE:integer:=9;TR_ASIZE:integer:=9;USE_NON_G3:integer:=0);port(CLK:in
std_logic;NRESET:in std_logic;EV_CHHOLD:in std_logic_vector(4 downto 0);
EV_DONE:in std_logic;TR_TRFLAG:out std_logic;TR_DONE:out std_logic;GPI:in
std_logic_vector((((2**GPI_BITS)*32)-1)downto 0);GPO:out std_logic_vector((((
2**GPO_BITS)*32)-1)downto 0);INIT_ADDR:in std_logic_vector(TR_ASIZE-1 downto 0);
INIT_TR_WR:in std_logic;INIT_DI:in std_logic_vector(8 downto 0);INIT_DONE:in
std_logic;USER_TR_ADDR:in std_logic_vector(TR_ASIZE-1 downto 0);USER_TR_RD:in
std_logic;USER_TR_RAM_BUSY:out std_logic;TR_EV_ADDR:out std_logic_vector(
EV_ASIZE-1 downto 0);TR_EV_RD:out std_logic;EV_RAM_DO_A:in std_logic_vector(8
downto 0);EV_RAM_WR_BUSY_B:in std_logic;TR_RAM_ADDR_A:out std_logic_vector(
TR_ASIZE-1 downto 0);TR_RAM_RW_A:out std_logic;TR_RAM_CSN_A:out std_logic;
TR_RAM_DI_A:out std_logic_vector(8 downto 0);TR_RAM_ADDR_B:out std_logic_vector(
TR_ASIZE-1 downto 0);TR_RAM_RW_B:out std_logic;TR_RAM_CSN_B:out std_logic;
TR_RAM_DI_B:out std_logic_vector(8 downto 0);TR_RAM_DO_B:in std_logic_vector(8
downto 0);TR_RAM_WR_BUSY_B:out std_logic);end SMTR;architecture behv of SMTR is
component ccfdxrhchsz generic(qjnhkksszkf:integer:=0;hbgvpqcgtwm:integer:=0;
fnscgtbnskd:integer:=1;xkcbxcnxxhg:integer:=9;cvczfvkpmqh:integer:=9;
dgswbvgbtfw:integer:=0);port(jktbwpsfwwq:in std_logic;gfrqwfndskc:in std_logic;
kpffvbpxmsf:in std_logic_vector(4 downto 0);txjjszxznxd:in std_logic;
zszmcgpbgkw:out std_logic;dmrgcpvxzhk:out std_logic;svfntzchvmh:in
std_logic_vector((((2**qjnhkksszkf)*32)-1)downto 0);nvpcwbhffsn:out
std_logic_vector((((2**hbgvpqcgtwm)*32)-1)downto 0);rthvrwwpqpk:in
std_logic_vector(cvczfvkpmqh-1 downto 0);rbvjpdddhcz:in std_logic;
xtfkmfbzksq:in std_logic_vector(8 downto 0);hgtrcfcxkrb:in std_logic;
qbrqxpmkpsw:in std_logic_vector(cvczfvkpmqh-1 downto 0);nktsnhmjrbx:in
std_logic;rbkmxbvpcdx:out std_logic;zngtgckbfnx:out std_logic_vector(
xkcbxcnxxhg-1 downto 0);mpnqskgzxzf:out std_logic;qxzrwpjhcww:in
std_logic_vector(8 downto 0);dnmrkvrtbjn:in std_logic;kxzjqrqjbxm:out
std_logic_vector(cvczfvkpmqh-1 downto 0);ngrmnspbvxf:out std_logic;
hxqsbsdhfvm:out std_logic;mvbwzprdfrk:out std_logic_vector(8 downto 0);
dtdngjrdwms:out std_logic_vector(cvczfvkpmqh-1 downto 0);ndngwnmwgbm:out
std_logic;svpbmqwvncp:out std_logic;jfkkdmfhcdn:out std_logic_vector(8 downto 0)
;tpxkpvnpvvn:in std_logic_vector(8 downto 0);xgnmbzmtzbb:out std_logic);end
component;begin u_ccfdxrhchsz:ccfdxrhchsz generic map(qjnhkksszkf=>GPI_BITS,
hbgvpqcgtwm=>GPO_BITS,fnscgtbnskd=>ALLOW_USER_TR,xkcbxcnxxhg=>EV_ASIZE,
cvczfvkpmqh=>TR_ASIZE,dgswbvgbtfw=>USE_NON_G3)port map(jktbwpsfwwq=>CLK,
gfrqwfndskc=>NRESET,kpffvbpxmsf=>EV_CHHOLD,txjjszxznxd=>EV_DONE,
zszmcgpbgkw=>TR_TRFLAG,dmrgcpvxzhk=>TR_DONE,svfntzchvmh=>GPI,nvpcwbhffsn=>GPO,
rthvrwwpqpk=>INIT_ADDR,rbvjpdddhcz=>INIT_TR_WR,xtfkmfbzksq=>INIT_DI,
hgtrcfcxkrb=>INIT_DONE,qbrqxpmkpsw=>USER_TR_ADDR,nktsnhmjrbx=>USER_TR_RD,
rbkmxbvpcdx=>USER_TR_RAM_BUSY,zngtgckbfnx=>TR_EV_ADDR,mpnqskgzxzf=>TR_EV_RD,
qxzrwpjhcww=>EV_RAM_DO_A,dnmrkvrtbjn=>EV_RAM_WR_BUSY_B,
kxzjqrqjbxm=>TR_RAM_ADDR_A,ngrmnspbvxf=>TR_RAM_RW_A,hxqsbsdhfvm=>TR_RAM_CSN_A,
mvbwzprdfrk=>TR_RAM_DI_A,dtdngjrdwms=>TR_RAM_ADDR_B,ndngwnmwgbm=>TR_RAM_RW_B,
svpbmqwvncp=>TR_RAM_CSN_B,jfkkdmfhcdn=>TR_RAM_DI_B,tpxkpvnpvvn=>TR_RAM_DO_B,
xgnmbzmtzbb=>TR_RAM_WR_BUSY_B);end behv;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -