请问关于ARITH程序包的问题

2019-07-16 01:33发布

  1. LIBRARY IEEE;
  2. USE IEEE.STD_LOGIC_1164.ALL;
  3. USE IEEE.STD_LOGIC_ARITH.ALL;
  4. USE IEEE.STD_LOGIC_UNSIGNED.ALL;
  5. ENtiTY cnt4_2 IS
  6. PORT(pst,clk,rst,enable,load:IN STD_LOGIC;
  7. data:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
  8. cnt:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0));
  9. END cnt4_2;
  10. ARCHITECTURE bev OF cnt4_2 IS
  11. BEGIN
  12. PROCESS(pst,clk,rst)
  13. BEGIN
  14. IF pst='1' THEN
  15. cnt<=(others=>'1');
  16. ELSIF rst='1' THEN
  17. cnt<=(others=>'0');
  18. ELSIF clk'EVENT AND clk='1' THEN
  19. IF load='1' THEN
  20. cnt<=data;
  21. ELSIF enable='1' THEN
  22. cnt<=cnt+1;
  23. END IF;
  24. END IF;
  25. END PROCESS;
  26. END bev;
复制代码这是四位二进制技术器的VHDL程序,请问ARITH这个包是做什么用的呢???还有,那个cnt<=(others=>'0'),这种写法就是others=>'0'这种用法是如何理解呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。