Line 1... |
Line 1... |
--! Baud generator
|
--! @file
|
--! http://www.fpga4fun.com/SerialInterface.html
|
--! @brief Baud generator http://www.fpga4fun.com/SerialInterface.html
|
library ieee;
|
library ieee;
|
use ieee.std_logic_1164.all;
|
use ieee.std_logic_1164.all;
|
use ieee.std_logic_unsigned.all;
|
use ieee.std_logic_unsigned.all;
|
use ieee.std_logic_arith.all;
|
use ieee.std_logic_arith.all;
|
use ieee.numeric_std.all;
|
use ieee.numeric_std.all;
|
|
|
--! Use CPU Definitions package
|
--! Use CPU Definitions package
|
use work.pkgDefinitions.all;
|
use work.pkgDefinitions.all;
|
|
|
entity baud_generator is
|
entity 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 baud_generator;
|
end baud_generator;
|
|
|
|
--! @brief Baud generator http://www.fpga4fun.com/SerialInterface.html
|
|
--! @details Implement block that will generate the desired baud (115200, 9600, etc...) from main clock (50Mhz)
|
architecture Behavioral of baud_generator is
|
architecture Behavioral of baud_generator is
|
signal genTick : std_logic;
|
signal genTick : std_logic;
|
signal genTickOverSample : std_logic;
|
signal genTickOverSample : std_logic;
|
begin
|
begin
|
process (rst, clk, cycle_wait)
|
process (rst, clk, cycle_wait)
|