亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? control_fsm.vhd

?? Standard 8051 IP Core
?? VHD
?? 第 1 頁 / 共 5 頁
字號:
              s_pc_inc_en <= "0001";      -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ADDC_A_DATA =>        -- ADDC A, data
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= ADDC_ACC_ROM;-- addition command (ACC+ROM_DATA_I+CY)
              s_data_mux <= "0011";     -- data = aludata_i
              s_regs_wr_en <= "011";    -- write ACC and CY,OV,AC
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_AJMP =>               -- AJMP addr11
            if state=FETCH then
              s_help16_en <= "10";      -- s_help16 = pc+2
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_pc_inc_en <= "0100";    -- load PC with 11 bits (2k block)
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_A_RR =>           -- ANL A,Rr
            if state=FETCH then
              s_adr_mux <= "0110";      -- adress = RR-adress
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= AND_ACC_RAM; -- AND command (ACC ^ RAM_DATA)
              s_data_mux <= "0011";     -- data = aludata_i
              s_regs_wr_en <= "010";    -- write ACC
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_A_D =>            -- ANL A, direct
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_adr_mux <= "1000";      -- address = rom_data_i
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              alu_cmd_o <= AND_ACC_RAM; -- AND command (ACC ^ RAM_DATA)
              s_data_mux <= "0011";     -- data = aludata_i
              s_regs_wr_en <= "010";    -- write ACC
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_A_ATRI =>          -- ANL A,ATRi
            if state=FETCH then
              s_adr_mux <= "0111";       -- address = Ri-register
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= AND_ACC_RAM;  -- AND command (ACC ^ RAM_DATA)
              s_data_mux <= "0011";      -- data = aludata_i
              s_regs_wr_en <= "010";     -- write ACC
              s_pc_inc_en <= "0001";     -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------
          when IC_ANL_A_DATA =>          -- ANL A, data
            if state=FETCH then
              s_pc_inc_en <= "0001";     -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= AND_ACC_ROM;   -- AND command (ACC ^ ROM_DATA_I)
              s_data_mux <= "0011";       -- data = aludata_i
              s_regs_wr_en <= "010";      -- write ACC
              s_pc_inc_en <= "0001";      -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_D_A =>            -- ANL direct, A
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_adr_mux <= "1000";      -- adress = rom_data_i
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              alu_cmd_o <= AND_ACC_RAM;  -- AND command (ACC ^ RAM_DATA)
              s_adr_mux <= "1000";       -- adress = rom_data_i
              s_data_mux <= "0011";      -- data = aludata_i
              s_regs_wr_en <= "100";     -- write one byte
              s_pc_inc_en <= "0001";     -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_D_DATA =>         -- ANL direct, DATA
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_help_en <= "0001";      -- help = rom_data_i
              s_adr_mux <= "1000";      -- adress = rom_data_i
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              alu_cmd_o <= AND_RAM_ROM;  -- AND command (ROM_DATA_I ^ RAM_DATA)
              s_adr_mux <= "1010";       -- adress = help
              s_data_mux <= "0011";      -- data = aludata_i
              s_regs_wr_en <= "100";     -- write one byte
              s_pc_inc_en <= "0001";     -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_C_BIT =>          -- ANL C, bit
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_adr_mux <= "1000";      -- adress = rom_data_i
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              s_bdata_mux <= "0001";    -- bdata = s_bit_data and cy
              s_regs_wr_en <= "110";    -- write one bit (automatic CY-address)
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_ANL_C_NBIT =>         -- ANL C, /bit
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_adr_mux <= "1000";      -- adress = rom_data_i
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              s_bdata_mux <= "0010";    -- bdata = not (s_bit_data and cy)
              s_regs_wr_en <= "110";    -- write one bit (automatic CY-address)
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_CJNE_A_D =>           -- CJNE A, direct, rel
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              s_adr_mux <= "1000";      -- address = rom_data_i
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              alu_cmd_o <= COMP_RAM_ACC;  -- Compare RAM_DATA/ACC operation
              if unsigned(aludata_i) /= 0 then
                s_adr_mux <= "1011";      -- adress of CY
                s_bdata_mux <= "0011";    -- bdata = cby_i
                s_regs_wr_en <= "110";    -- write one bit
                s_pc_inc_en <= "0010";    -- add relativ adress to PC
              else
                s_pc_inc_en <= "0001";    -- increment program-counter
              end if;
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_CJNE_A_DATA =>        -- CJNE A, #data, rel
            if state=FETCH then
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= COMP_ROM_ACC; -- Compare ROM_DATA_I/ACC operation
              s_help_en <= "0010";
              s_helpb_en <= '1';         -- save new_cy_i
              s_pc_inc_en <= "0001";     -- increment program-counter
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              if s_help /= 0 then
                s_adr_mux <= "1011";     -- adress of CY
                s_bdata_mux <= "0100";   -- bdata = s_helpb
                s_regs_wr_en <= "110";   -- write one bit
                s_pc_inc_en <= "0010";   -- add relativ adress to PC
              else
                s_pc_inc_en <= "0001";   -- increment program-counter
              end if;
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_CJNE_RR_DATA =>        -- CJNE RR, #data, rel
            if state=FETCH then
              s_adr_mux <= "0110";       -- address = rr-address
              s_pc_inc_en <= "0001";     -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= COMP_ROM_RAM;-- Compare ROM_DATA_I/RAM_DATA operat.
              s_help_en <= "0010";      -- save aludata_i
              s_helpb_en <= '1';        -- save new_cy_i
              s_pc_inc_en <= "0001";    -- increment program-counter
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              if s_help /= 0 then
                s_adr_mux <= "1011";     -- adress of CY
                s_bdata_mux <= "0100";   -- bdata = s_helpb
                s_regs_wr_en <= "110";   -- write one bit
                s_pc_inc_en <= "0010";   -- add relativ adress to PC
              else
                s_pc_inc_en <= "0001";   -- increment program-counter
              end if;
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_CJNE_ATRI_DATA =>       -- CJNE @Ri, #data, rel
            if state=FETCH then
              s_adr_mux <= "0111";        -- address = Ri-register
              s_pc_inc_en <= "0001";      -- increment program-counter
              s_nextstate <= EXEC1;
            elsif state=EXEC1 then
              alu_cmd_o <= COMP_ROM_RAM;  -- Compare ROM_/RAM_DATA operation
              s_help_en <= "0010";        -- save aludata_i
              s_helpb_en <= '1';          -- save new_cy_i
              s_pc_inc_en <= "0001";      -- increment program-counter
              s_nextstate <= EXEC2;
            elsif state=EXEC2 then
              if s_help /= 0 then
                s_adr_mux <= "1011";     -- adress of CY
                s_bdata_mux <= "0100";   -- bdata = s_helpb
                s_regs_wr_en <= "110";   -- write one bit
                s_pc_inc_en <= "0010";   -- add relativ adress to PC
              else
                s_pc_inc_en <= "0001";   -- increment program-counter
              end if;
              s_nextstate <= FETCH;
            end if;

          ---------------------------------------------------------------------

          when IC_CLR_A =>              -- CLR A
            s_data_mux <= "0000";       -- data = 0
            s_regs_wr_en <= "010";      -- write ACC
            s_pc_inc_en <= "0001";      -- increment program-counter
            s_nextstate <= FETCH;

          ---------------------------------------------------------------------

          when IC_CLR_C =>              -- CLR C
            s_adr_mux <= "1011";        -- adress of CY
            s_bdata_mux <= "0000";      -- bdata = 0
            s_regs_wr_en <= "110";      -- write one bit
            s_pc_inc_en <= "0001";      -- increment program-counter
            s_nextstate <= FETCH;

          ---------------------------------------------------------------------

          when IC_CLR_BIT =>            -- CLR bit
            if state=FETCH then

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本到不卡精品视频在线观看| 欧美亚洲综合色| 亚洲视频免费在线观看| 亚洲精品一区在线观看| 欧美r级电影在线观看| 欧美精品一级二级| 69av一区二区三区| 91精品国产综合久久精品麻豆| 91超碰这里只有精品国产| 欧美电影在线免费观看| 欧美一区二区三区在线电影 | 欧美精品一区二区三区很污很色的| 欧美日韩一级片在线观看| 欧美丰满一区二区免费视频| 欧美一二三区在线观看| 色婷婷国产精品综合在线观看| 成人成人成人在线视频| 成人福利视频在线| 色综合天天综合色综合av| 日韩欧美成人激情| 成人一级片在线观看| 免费日本视频一区| 日韩综合小视频| 日韩和欧美一区二区| 奇米一区二区三区av| 精品亚洲国内自在自线福利| 国产久卡久卡久卡久卡视频精品| 九色porny丨国产精品| 国产.欧美.日韩| 91网站最新网址| 7777精品久久久大香线蕉| 日韩一级片在线播放| 国产日产欧美精品一区二区三区| 欧美国产欧美综合| 亚洲午夜免费电影| 国内不卡的二区三区中文字幕| 国产精品一区免费视频| 色婷婷综合久久久久中文一区二区| 欧美午夜精品一区二区三区| 日韩午夜中文字幕| 最新日韩在线视频| 蜜臀av性久久久久蜜臀av麻豆| 国产成人午夜视频| 欧美三级中文字幕| 久久精品一级爱片| 婷婷国产v国产偷v亚洲高清| 国产激情视频一区二区在线观看 | 久久精品欧美日韩| 午夜精品福利一区二区三区av| 国产精品亚洲午夜一区二区三区| 欧美大度的电影原声| 1000部国产精品成人观看| 蜜桃一区二区三区在线| 欧美日韩亚洲国产综合| 亚洲视频在线一区| 国产精品中文有码| 日韩欧美一级二级三级 | 欧美日韩黄色一区二区| 国产精品久久久久久久久免费相片| 午夜精品国产更新| 色中色一区二区| 国产精品三级在线观看| 国产一区二区伦理| 日韩欧美中文字幕一区| 婷婷开心激情综合| 欧美日产国产精品| 香蕉加勒比综合久久| 色偷偷久久人人79超碰人人澡| 国产视频不卡一区| 懂色av一区二区在线播放| 久久久久亚洲蜜桃| 国内一区二区视频| 国产亚洲精品资源在线26u| 久久精品国产秦先生| 日韩一本二本av| 日韩av二区在线播放| 欧美高清dvd| 三级欧美在线一区| 日韩色在线观看| 久久成人免费日本黄色| 精品免费日韩av| 国产精品亚洲午夜一区二区三区| 欧美精品一区二区三| 国产夫妻精品视频| 国产精品免费丝袜| 91免费观看国产| 亚洲成a人v欧美综合天堂下载| 欧美体内she精高潮| 天堂av在线一区| 日韩欧美成人一区| 成人爱爱电影网址| 亚洲乱码日产精品bd| 欧美三级一区二区| 蜜臀av性久久久久蜜臀av麻豆| 精品国产91亚洲一区二区三区婷婷| 黑人精品欧美一区二区蜜桃| 中文字幕av免费专区久久| 久久成人免费电影| www.99精品| 欧美无砖专区一中文字| 国产一区日韩二区欧美三区| 国产一区二区三区高清播放| 国产精品自拍网站| 9l国产精品久久久久麻豆| 国产精品1区2区| 91视频一区二区三区| 欧美人伦禁忌dvd放荡欲情| 91小视频在线观看| 欧美精品1区2区| 久久久精品免费网站| 一区二区三区日韩在线观看| 亚洲激情自拍视频| 日韩一区二区三| 成人aaaa免费全部观看| 手机精品视频在线观看| 久久精品夜色噜噜亚洲aⅴ| 一本色道久久综合亚洲91 | 亚洲欧美一区二区三区久本道91| 在线视频国产一区| 国产精品一二三四五| 一个色在线综合| 欧美激情艳妇裸体舞| 日韩视频免费观看高清完整版 | 欧美成人激情免费网| 99r国产精品| 樱花草国产18久久久久| 一区二区三区四区中文字幕| 日韩三级高清在线| 在线看国产日韩| 国产91丝袜在线观看| 久久99国产精品免费网站| 亚洲免费观看在线观看| 精品对白一区国产伦| 欧美精选在线播放| 91国产免费观看| 粉嫩aⅴ一区二区三区四区五区| 人禽交欧美网站| 亚洲bt欧美bt精品| 亚洲美女视频在线| 亚洲丝袜另类动漫二区| 国产亚洲一区二区三区四区| 精品国精品自拍自在线| 日韩欧美在线网站| 欧美日本不卡视频| 欧美日本精品一区二区三区| 欧美网站大全在线观看| av不卡免费在线观看| 成人av电影免费在线播放| 高清shemale亚洲人妖| 国产在线一区二区综合免费视频| 久久精品国产网站| 久久99久国产精品黄毛片色诱| 日本欧美一区二区| 日本亚洲欧美天堂免费| 日产精品久久久久久久性色| 国产精品一区二区无线| 精品国产乱码久久久久久图片 | 精品国产99国产精品| 欧美日韩高清影院| 欧美日韩一区二区三区在线| 色欧美日韩亚洲| 91国偷自产一区二区三区观看| 91丨九色丨蝌蚪丨老版| 9l国产精品久久久久麻豆| 91免费视频网址| 日本电影亚洲天堂一区| 欧美日韩在线综合| 日韩天堂在线观看| 2020国产精品自拍| 欧美国产精品劲爆| 一色屋精品亚洲香蕉网站| 亚洲已满18点击进入久久| 亚洲va欧美va天堂v国产综合| 日韩av电影免费观看高清完整版| 日韩电影一二三区| 国产美女精品一区二区三区| 成人av在线看| 欧美视频一区二区三区在线观看| 91精品在线一区二区| 久久先锋资源网| 一区二区三区四区av| 日本v片在线高清不卡在线观看| 九九热在线视频观看这里只有精品| 成人午夜又粗又硬又大| 欧美性大战久久| 久久久久一区二区三区四区| 亚洲情趣在线观看| 免费成人av资源网| 99视频热这里只有精品免费| 91麻豆精品国产自产在线观看一区 | 另类人妖一区二区av| 成人免费av在线| 欧美日韩夫妻久久| 中文字幕欧美日韩一区| 亚洲妇熟xx妇色黄| av亚洲精华国产精华| 欧美videos中文字幕| 亚洲综合免费观看高清完整版 | 2欧美一区二区三区在线观看视频| 中文字幕高清不卡|