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

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

?? kcuart_tx.vhd

?? 硬件平臺為Xilinx Spartan3e
?? VHD
字號:
-- Constant (K) Compact UART Transmitter
--
-- Version : 1.10 
-- Version Date : 3rd December 2003
-- Reason : '--translate' directives changed to '--synthesis translate' directives
--
-- Version : 1.00
-- Version Date : 14th October 2002
--
-- Start of design entry : 2nd October 2002
--
-- Ken Chapman
-- Xilinx Ltd
-- Benchmark House
-- 203 Brooklands Road
-- Weybridge
-- Surrey KT13 ORH
-- United Kingdom
--
-- chapman@xilinx.com
--
------------------------------------------------------------------------------------
--
-- NOTICE:
--
-- Copyright Xilinx, Inc. 2002.   This code may be contain portions patented by other 
-- third parties.  By providing this core as one possible implementation of a standard,
-- Xilinx is making no representation that the provided implementation of this standard 
-- is free from any claims of infringement by any third party.  Xilinx expressly 
-- disclaims any warranty with respect to the adequacy of the implementation, including 
-- but not limited to any warranty or representation that the implementation is free 
-- from claims of any third party.  Futhermore, Xilinx is providing this core as a 
-- courtesy to you and suggests that you contact all third parties to obtain the 
-- necessary rights to use this implementation.
--
------------------------------------------------------------------------------------
--
-- Library declarations
--
-- The Unisim Library is used to define Xilinx primitives. It is also used during
-- simulation. The source can be viewed at %XILINX%\vhdl\src\unisims\unisim_VCOMP.vhd
--
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
library unisim;
use unisim.vcomponents.all;
--
------------------------------------------------------------------------------------
--
-- Main Entity for KCUART_TX
--
entity kcuart_tx is
    Port (        data_in : in std_logic_vector(7 downto 0);
           send_character : in std_logic;
             en_16_x_baud : in std_logic;
               serial_out : out std_logic;
              Tx_complete : out std_logic;
                      clk : in std_logic);
    end kcuart_tx;
--
------------------------------------------------------------------------------------
--
-- Start of Main Architecture for KCUART_TX
--	 
architecture low_level_definition of kcuart_tx is
--
------------------------------------------------------------------------------------
--
------------------------------------------------------------------------------------
--
-- Signals used in KCUART_TX
--
------------------------------------------------------------------------------------
--
signal data_01            : std_logic;
signal data_23            : std_logic;
signal data_45            : std_logic;
signal data_67            : std_logic;
signal data_0123          : std_logic;
signal data_4567          : std_logic;
signal data_01234567      : std_logic;
signal bit_select         : std_logic_vector(2 downto 0);
signal next_count         : std_logic_vector(2 downto 0);
signal mask_count         : std_logic_vector(2 downto 0);
signal mask_count_carry   : std_logic_vector(2 downto 0);
signal count_carry        : std_logic_vector(2 downto 0);
signal ready_to_start     : std_logic;
signal decode_Tx_start    : std_logic;
signal Tx_start           : std_logic;
signal decode_Tx_run      : std_logic;
signal Tx_run             : std_logic;
signal decode_hot_state   : std_logic;
signal hot_state          : std_logic;
signal hot_delay          : std_logic;
signal Tx_bit             : std_logic;
signal decode_Tx_stop     : std_logic;
signal Tx_stop            : std_logic;
signal decode_Tx_complete : std_logic;
--
--
------------------------------------------------------------------------------------
--
-- Attributes to define LUT contents during implementation 
-- The information is repeated in the generic map for functional simulation--
--
------------------------------------------------------------------------------------
--
attribute INIT : string; 
attribute INIT of mux1_lut      : label is "E4FF";
attribute INIT of mux2_lut      : label is "E4FF";
attribute INIT of mux3_lut      : label is "E4FF";
attribute INIT of mux4_lut      : label is "E4FF";
attribute INIT of ready_lut     : label is "10";
attribute INIT of start_lut     : label is "0190";
attribute INIT of run_lut       : label is "1540";
attribute INIT of hot_state_lut : label is "94";
attribute INIT of delay14_srl   : label is "0000";
attribute INIT of stop_lut      : label is "0180";
attribute INIT of complete_lut  : label is "8";
--
------------------------------------------------------------------------------------
--
-- Start of KCUART_TX circuit description
--
------------------------------------------------------------------------------------
--	
begin

  -- 8 to 1 multiplexer to convert parallel data to serial

  mux1_lut: LUT4
  --synthesis translate_off
    generic map (INIT => X"E4FF")
  --synthesis translate_on
  port map( I0 => bit_select(0),
            I1 => data_in(0),
            I2 => data_in(1),
            I3 => Tx_run,
             O => data_01 );

  mux2_lut: LUT4
  --synthesis translate_off
    generic map (INIT => X"E4FF")
  --synthesis translate_on
  port map( I0 => bit_select(0),
            I1 => data_in(2),
            I2 => data_in(3),
            I3 => Tx_run,
             O => data_23 );

  mux3_lut: LUT4
  --synthesis translate_off
    generic map (INIT => X"E4FF")
  --synthesis translate_on
  port map( I0 => bit_select(0),
            I1 => data_in(4),
            I2 => data_in(5),
            I3 => Tx_run,
             O => data_45 );

  mux4_lut: LUT4
  --synthesis translate_off
    generic map (INIT => X"E4FF")
  --synthesis translate_on
  port map( I0 => bit_select(0),
            I1 => data_in(6),
            I2 => data_in(7),
            I3 => Tx_run,
             O => data_67 );

  mux5_muxf5: MUXF5
  port map(  I1 => data_23,
             I0 => data_01,
              S => bit_select(1),
              O => data_0123 );

  mux6_muxf5: MUXF5
  port map(  I1 => data_67,
             I0 => data_45,
              S => bit_select(1),
              O => data_4567 );

  mux7_muxf6: MUXF6
  port map(  I1 => data_4567,
             I0 => data_0123,
              S => bit_select(2),
              O => data_01234567 );

  -- Register serial output and force start and stop bits

  pipeline_serial: FDRS
  port map ( D => data_01234567,
             Q => serial_out,
             R => Tx_start,
             S => Tx_stop,
             C => clk);

  -- 3-bit counter
  -- Counter is clock enabled by en_16_x_baud
  -- Counter will be reset when 'Tx_start' is active
  -- Counter will increment when Tx_bit is active
  -- Tx_run must be active to count
  -- count_carry(2) indicates when terminal count (7) is reached and Tx_bit=1 (ie overflow)

  count_width_loop: for i in 0 to 2 generate
  --
  attribute INIT : string; 
  attribute INIT of count_lut : label is "8"; 
  --
  begin

     register_bit: FDRE
     port map ( D => next_count(i),
                Q => bit_select(i),
               CE => en_16_x_baud,
                R => Tx_start,
                C => clk);

     count_lut: LUT2
     --synthesis translate_off
     generic map (INIT => X"8")
     --synthesis translate_on
     port map( I0 => bit_select(i),
               I1 => Tx_run,
                O => mask_count(i));

     mask_and: MULT_AND
     port map( I0 => bit_select(i),
               I1 => Tx_run,
               LO => mask_count_carry(i));

     lsb_count: if i=0 generate
     begin

       count_muxcy: MUXCY
       port map( DI => mask_count_carry(i),
                 CI => Tx_bit,
                  S => mask_count(i),
                  O => count_carry(i));
       
       count_xor: XORCY
       port map( LI => mask_count(i),
                 CI => Tx_bit,
                  O => next_count(i));

     end generate lsb_count;

     upper_count: if i>0 generate
     begin

       count_muxcy: MUXCY
       port map( DI => mask_count_carry(i),
                 CI => count_carry(i-1),
                  S => mask_count(i),
                  O => count_carry(i));
       
       count_xor: XORCY
       port map( LI => mask_count(i),
                 CI => count_carry(i-1),
                  O => next_count(i));

     end generate upper_count;

  end generate count_width_loop;
 
  -- Ready to start decode

  ready_lut: LUT3
  --synthesis translate_off
  generic map (INIT => X"10")
  --synthesis translate_on
  port map( I0 => Tx_run,
            I1 => Tx_start,
            I2 => send_character,
             O => ready_to_start );

  -- Start bit enable

  start_lut: LUT4
  --synthesis translate_off
  generic map (INIT => X"0190")
  --synthesis translate_on
  port map( I0 => Tx_bit,
            I1 => Tx_stop,
            I2 => ready_to_start,
            I3 => Tx_start,
             O => decode_Tx_start );

  Tx_start_reg: FDE
  port map ( D => decode_Tx_start,
             Q => Tx_start,
            CE => en_16_x_baud,
             C => clk);


  -- Run bit enable

  run_lut: LUT4
  --synthesis translate_off
  generic map (INIT => X"1540")
  --synthesis translate_on
  port map( I0 => count_carry(2),
            I1 => Tx_bit,
            I2 => Tx_start,
            I3 => Tx_run,
             O => decode_Tx_run );

  Tx_run_reg: FDE
  port map ( D => decode_Tx_run,
             Q => Tx_run,
            CE => en_16_x_baud,
             C => clk);

  -- Bit rate enable

  hot_state_lut: LUT3
  --synthesis translate_off
  generic map (INIT => X"94")
  --synthesis translate_on
  port map( I0 => Tx_stop,
            I1 => ready_to_start,
            I2 => Tx_bit,
             O => decode_hot_state );

  hot_state_reg: FDE
  port map ( D => decode_hot_state,
             Q => hot_state,
            CE => en_16_x_baud,
             C => clk);

  delay14_srl: SRL16E
  --synthesis translate_off
  generic map (INIT => X"0000")
  --synthesis translate_on
  port map(   D => hot_state,
             CE => en_16_x_baud,
            CLK => clk,
             A0 => '1',
             A1 => '0',
             A2 => '1',
             A3 => '1',
              Q => hot_delay );

  Tx_bit_reg: FDE
  port map ( D => hot_delay,
             Q => Tx_bit,
            CE => en_16_x_baud,
             C => clk);

  -- Stop bit enable

  stop_lut: LUT4
  --synthesis translate_off
  generic map (INIT => X"0180")
  --synthesis translate_on
  port map( I0 => Tx_bit,
            I1 => Tx_run,
            I2 => count_carry(2),
            I3 => Tx_stop,
             O => decode_Tx_stop );

  Tx_stop_reg: FDE
  port map ( D => decode_Tx_stop,
             Q => Tx_stop,
            CE => en_16_x_baud,
             C => clk);

  -- Tx_complete strobe

  complete_lut: LUT2
  --synthesis translate_off
  generic map (INIT => X"8")
  --synthesis translate_on
  port map( I0 => count_carry(2),
            I1 => en_16_x_baud,
             O => decode_Tx_complete );

  Tx_complete_reg: FD
  port map ( D => decode_Tx_complete,
             Q => Tx_complete,
             C => clk);


end low_level_definition;

------------------------------------------------------------------------------------
--
-- END OF FILE KCUART_TX.VHD
--
------------------------------------------------------------------------------------


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲第一福利一区| 亚洲欧美偷拍三级| 欧美日韩免费一区二区三区视频| 国产成人日日夜夜| 成人夜色视频网站在线观看| 国产老肥熟一区二区三区| 国产真实乱对白精彩久久| 国产一区在线观看视频| 丰满少妇久久久久久久 | 色综合一个色综合| 成人综合婷婷国产精品久久| 国产**成人网毛片九色| jizzjizzjizz欧美| 欧美亚洲动漫精品| 欧美一级视频精品观看| 久久亚洲精华国产精华液| 久久久久国产精品麻豆ai换脸| 国产亚洲欧美色| 18欧美亚洲精品| 亚洲成人免费av| 久久成人综合网| 粉嫩aⅴ一区二区三区四区五区| 99re6这里只有精品视频在线观看| 91一区二区三区在线观看| 欧美在线免费视屏| 久久伊99综合婷婷久久伊| 1000精品久久久久久久久| 一区二区高清免费观看影视大全 | 国产一区二区三区在线观看免费 | 国产精品蜜臀在线观看| 亚洲精品高清在线| 免费观看日韩av| 成人18视频日本| 欧美精品色综合| 国产亚洲人成网站| 亚洲一区二区三区视频在线| 美国精品在线观看| 色av综合在线| 久久久精品人体av艺术| 亚洲成在线观看| 国产激情一区二区三区桃花岛亚洲 | 亚洲精品乱码久久久久| 日本午夜精品一区二区三区电影 | 亚洲色图在线看| 韩国理伦片一区二区三区在线播放| www.亚洲免费av| 精品日韩成人av| 亚洲一区在线观看免费| 91视视频在线观看入口直接观看www | 精品国产百合女同互慰| 亚洲视频你懂的| 国产精品综合网| 欧美福利视频一区| 亚洲人成伊人成综合网小说| 麻豆国产精品一区二区三区| 在线观看中文字幕不卡| 国产欧美中文在线| 精品中文字幕一区二区小辣椒| 一本大道久久a久久精二百| 久久久久九九视频| 久久99最新地址| 欧美一区二区三区不卡| 一区二区三区四区激情| eeuss国产一区二区三区| 亚洲精品在线电影| 久久精品国产免费看久久精品| 欧美亚洲国产一区二区三区 | 91丝袜高跟美女视频| 亚洲国产成人午夜在线一区| 蜜桃av一区二区在线观看| 欧美日韩精品一二三区| 亚洲国产日韩精品| 欧美性xxxxx极品少妇| 人妖欧美一区二区| 777欧美精品| 首页欧美精品中文字幕| 欧美日韩情趣电影| 天天综合色天天| 欧美色国产精品| 日本一道高清亚洲日美韩| 欧美肥妇毛茸茸| 青青草伊人久久| 欧美电影精品一区二区| 久久丁香综合五月国产三级网站| 欧美成人r级一区二区三区| 免费高清在线一区| 国产香蕉久久精品综合网| 懂色av噜噜一区二区三区av | 99在线精品免费| 亚洲欧美日韩综合aⅴ视频| 成人av综合一区| 一区二区三区美女| 91精品久久久久久久久99蜜臂| 无码av中文一区二区三区桃花岛| 51精品国自产在线| 蜜桃久久av一区| 国产亚洲一区二区在线观看| 97精品久久久午夜一区二区三区| 亚洲男人都懂的| 91精品国产综合久久国产大片| 蜜桃在线一区二区三区| 欧美国产日本视频| 欧美在线不卡一区| 韩国av一区二区三区四区| 中文字幕巨乱亚洲| 欧美亚洲另类激情小说| 激情综合色综合久久| 综合久久久久久久| 日韩色在线观看| 成人黄色777网| 日韩激情中文字幕| 亚洲国产岛国毛片在线| 欧美三级一区二区| 国产iv一区二区三区| 亚洲中国最大av网站| 精品国产乱码久久| 在线观看亚洲一区| 国产成人综合亚洲网站| 亚洲成人av在线电影| 欧美国产激情一区二区三区蜜月| 精品1区2区3区| 成人美女在线观看| 麻豆一区二区三| 亚洲成av人影院| 综合亚洲深深色噜噜狠狠网站| 欧美激情一二三区| 91精品欧美久久久久久动漫| 91视频免费看| 成人一道本在线| 国产在线视视频有精品| 日本成人中文字幕| 亚洲第一搞黄网站| 亚洲精品乱码久久久久久| 国产精品青草久久| 久久久久久黄色| 精品福利一区二区三区免费视频| 在线视频亚洲一区| 99精品久久久久久| 国产精品白丝jk白祙喷水网站| 日本欧美韩国一区三区| 亚洲二区在线观看| 亚洲天堂福利av| 欧美国产成人精品| 中文字幕精品—区二区四季| 精品国产第一区二区三区观看体验| 777xxx欧美| 欧美一区日韩一区| 制服丝袜av成人在线看| 欧美日韩成人一区| 欧美老肥妇做.爰bbww视频| 欧美在线视频你懂得| 欧美亚洲另类激情小说| 在线观看日韩国产| 在线观看国产91| 精品视频1区2区3区| 欧美日韩色综合| 日韩一卡二卡三卡四卡| 91精品国产一区二区| 91精品国产高清一区二区三区| 欧美日韩国产精品成人| 在线成人高清不卡| 欧美成人猛片aaaaaaa| 久久婷婷一区二区三区| 日本一区二区在线不卡| 国产精品嫩草影院com| 亚洲免费视频中文字幕| 亚洲国产成人精品视频| 婷婷综合在线观看| 免费成人在线视频观看| 国产一区久久久| 国产夫妻精品视频| 99国产一区二区三精品乱码| 99精品视频一区二区| 欧美视频在线播放| 日韩免费观看2025年上映的电影 | 中文字幕欧美三区| 一区二区三区在线视频观看| 亚洲1区2区3区视频| 久久97超碰色| 99精品国产视频| 91 com成人网| 国产精品女主播av| 亚洲电影在线免费观看| 久久爱www久久做| 91片在线免费观看| 日韩欧美成人激情| 中文字幕人成不卡一区| 三级成人在线视频| 国产激情视频一区二区三区欧美| 91成人网在线| 久久久久九九视频| 亚洲一级在线观看| 丰满白嫩尤物一区二区| 欧美精品亚洲二区| ...xxx性欧美| 国产一区美女在线| 69堂精品视频| 伊人开心综合网| 大陆成人av片| 日韩三级电影网址|