OpenCores
URL https://opencores.org/ocsvn/uart_block/uart_block/trunk

Subversion Repositories uart_block

[/] [uart_block/] [trunk/] [hdl/] [iseProject/] [uart_communication_blocks.vhd] - Diff between revs 36 and 37

Show entire file | Details | Blame | View Log

Rev 36 Rev 37
Line 1... Line 1...
--! Top level for interconnection between communication blocks: serial_transmitter, serial_receiver, baud_generator
--! @file
 
--! @brief Top level for interconnection between communication blocks: serial_transmitter, serial_receiver, baud_generator
library IEEE;
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_1164.ALL;
 
 
--! Use CPU Definitions package
--! Use CPU Definitions package
use work.pkgDefinitions.all;
use work.pkgDefinitions.all;
Line 16... Line 17...
                          serial_out : out std_logic;                                                                                                   --! Uart serial out
                          serial_out : out std_logic;                                                                                                   --! Uart serial out
                          serial_in : in std_logic;                                                                                                     --! Uart serial in
                          serial_in : in std_logic;                                                                                                     --! Uart serial in
           start_tx : in  STD_LOGIC);                                                                                                   --! Initiate transmission
           start_tx : in  STD_LOGIC);                                                                                                   --! Initiate transmission
end uart_communication_blocks;
end uart_communication_blocks;
 
 
 
--! @brief Top level for interconnection between communication blocks: serial_transmitter, serial_receiver, baud_generator
 
--! @details Declare used components for instantiation
architecture Behavioral of uart_communication_blocks is
architecture Behavioral of uart_communication_blocks is
 
 
-- Declare components...
-- Declare components...
component baud_generator is
component baud_generator is
    Port ( rst : in STD_LOGIC;
    Port ( rst : in STD_LOGIC;                                                                                                          --! Reset Input
                          clk : in  STD_LOGIC;
                          clk : in  STD_LOGIC;                                                                                                          --! Clock input
           cycle_wait : in  STD_LOGIC_VECTOR ((nBitsLarge-1) downto 0);
           cycle_wait : in  STD_LOGIC_VECTOR ((nBitsLarge-1) downto 0);  --! Number of cycles to wait for baud generation
                          baud_oversample : out std_logic;
                          baud_oversample : out std_logic;                                                                              --! Oversample(8x) version of baud (Used on serial_receiver)
           baud : out  STD_LOGIC);
           baud : out  STD_LOGIC);                                                                                                      --! Baud generation output (Used on serial_transmitter)
end component;
end component;
 
 
component serial_transmitter is
component serial_transmitter is
    Port ( rst : in  STD_LOGIC;
     Port ( rst : in  STD_LOGIC;                                                                                                --! Reset input
           baudClk : in  STD_LOGIC;
           baudClk : in  STD_LOGIC;                                                                                     --! Baud rate clock input
           data_byte : in  STD_LOGIC_VECTOR ((nBits-1) downto 0);
           data_byte : in  STD_LOGIC_VECTOR ((nBits-1) downto 0);        --! Byte to be sent
                          data_sent : out STD_LOGIC;
                          data_sent : out STD_LOGIC;                                                                            --! Indicate that byte has been sent
           serial_out : out  STD_LOGIC);
           serial_out : out  STD_LOGIC);                                                                        --! Uart serial output
end component;
end component;
 
 
component serial_receiver is
component serial_receiver is
    Port (
    Port (
                          rst : in STD_LOGIC;
                          rst : in STD_LOGIC;                                                                                                   --! Reset input           
                          baudOverSampleClk : in  STD_LOGIC;
                          baudOverSampleClk : in  STD_LOGIC;                                                            --! Baud oversampled 8x (Best way to detect start bit)
           serial_in : in  STD_LOGIC;
           serial_in : in  STD_LOGIC;                                                                                   --! Uart serial input
           data_ready : out  STD_LOGIC;
           data_ready : out  STD_LOGIC;                                                                         --! Data received and ready to be read
           data_byte : out  STD_LOGIC_VECTOR ((nBits-1) downto 0));
           data_byte : out  STD_LOGIC_VECTOR ((nBits-1) downto 0));      --! Data byte received
end component;
end component;
signal baud_tick : std_logic;
signal baud_tick : std_logic;
signal baud_tick_oversample : std_logic;
signal baud_tick_oversample : std_logic;
begin
begin
        --! Instantiate baud generator
        --! Instantiate baud generator

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.