Question
in vhdl
Manchester code is a coding scheme used to represent a bit in a data stream. A O value of a bit is represented as a 0-to-1
0 0
Add a comment Improve this question Transcribed image text
Answer #1
ASM AND FSM OF MANCHESTER CODING

Manchester coding for 110 FSM using Medly Let us Machine salue for general case Approach محتاره ای on Reaning state diagram .So olls will look like Hox Next step to label States le>@_>® State Tag i-o ial iso il sol si s3 on SI 53 Next stage output lo/1 lendo step - o Zero clo P2 level-1 step=1 I level =0 Step- o YP3 ASM one level = 1 Minimized stat Diag, step =0 4 SimpsyVHDL CODE for MAnchester Coding
library ieee; 
use ieee.std_logic_1164.all; 
entity manchester is
    port (
        clk        : in std_logic;
        resetn     : in std_logic;
        reset      : in std_logic;
        std_output : out std_logic
    );
end manchester;


TESTBENCH
library ieee;
use ieee.std_logic_1164.all;

entity tb_manchester is
end tb_manchester;

architecture tb of tb_manchester is

    component manchester
        port (clk        : in std_logic;
              resetn     : in std_logic;
              reset      : in std_logic;
              std_output : out std_logic);
    end component;

    signal clk        : std_logic;
    signal resetn     : std_logic;
    signal reset      : std_logic;
    signal std_output : std_logic;

    constant TbPeriod : time := 1000 ns; -- EDIT Put right period here
    signal TbClock : std_logic := '0';
    signal TbSimEnded : std_logic := '0';

begin

    dut : manchester
    port map (clk        => clk,
              resetn     => resetn,
              reset      => reset,
              std_output => std_output);

    -- Clock generation
    TbClock <= not TbClock after TbPeriod/2 when TbSimEnded /= '1' else '0';

    -- EDIT: Check that clk is really your main clock signal
    clk <= TbClock;

    stimuli : process
    begin
        -- EDIT Adapt initialization as needed
        reset <= '0';

        -- Reset generation
        -- EDIT: Check that resetn is really your reset signal
        resetn <= '1';
        wait for 100 ns;
        resetn <= '0';
        wait for 100 ns;

        -- EDIT Add stimuli here
        wait for 100 * TbPeriod;

        -- Stop the clock and hence terminate the simulation
        TbSimEnded <= '1';
        wait;
    end process;

end tb;

-- Configuration block below is required by some simulators. Usually no need to edit.

configuration cfg_tb_manchester of tb_manchester is
    for tb
    end for;
end cfg_tb_manchester;

architecture behaviour of manchester is
    signal p, q, p_next, q_next := '0';
begin
    -- Present state determines the mealy output (q, p) & input (reset)
    q1: process(p, q, reset)
    begin
        std_output <= not reset and p xor q or reset and not p and not q;
        p_next <= not p and reset;
        q_next <= not q and (not p and not reset or reset and q);
    end process;

    -- Clock rising edge during state transition
    q2: process(clk, resetn)
    begin
        if resetn = '0' then
            q <= '0';
            p <= '0';
        elsif clk'event and clk = '1' then
            q <= q_next;
            p <= p_next;
        end IF;
    end process;
end behaviour;
Add a comment
Know the answer?
Add Answer to:
in vhdl Manchester code is a coding scheme used to represent a bit in a data...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Write a VHDL code using processes for the following logic circuit which include a shift register...

    Write a VHDL code using processes for the following logic circuit which include a shift register and 4x1 multiplexer. Use the entity below.              entity registers_min_max is port( din   : in std_logic_vector(3 downto 0);       reset : in std_logic;       clk   : in std_logic;       sel   : in std_logic_vector(1 downto 0);       reg_out : out std_logic_vector(3 downto 0)); end registers_min_max; din reset RO clk reset R1 A C clk reset R2 clk reset R3 clk 3 0 sel LE

  • Draw the RTL schematic of the hardware that will be synthesized for the VHDL code below....

    Draw the RTL schematic of the hardware that will be synthesized for the VHDL code below. entity unknown is port (x: in std_logic_vector(7 downto 0); op: in std_logic_vector(1 downto 0); clk: in std_logic; f: out std_logic_vector(7 downto 0)); end entity. architecture arch of unknown is signal a, b, c, d: std_logic_vector(7 downto 0); begin d <= x; process (clk) begin if (rising_edge(clk)) then a <= b; b <= c + a; c <= d; if (op = “00”) then f...

  • Write a test bench for the following VHDL code -------------------------------------------------------------------------------------------------------------------------------- LIBRARY ieee ; USE ieee.std_logic_1164.all ;...

    Write a test bench for the following VHDL code -------------------------------------------------------------------------------------------------------------------------------- LIBRARY ieee ; USE ieee.std_logic_1164.all ; ENTITY registern IS GENERIC (N: INTEGER :=4);    -- INTEGER=32, 16, ….. PORT (D           : IN STD_LOGIC_VECTOR (N-1 downto 0); clk, reset, Load   : IN      STD_LOGIC ; Q           : OUT   STD_LOGIC_VECTOR (N-1 downto 0 )) ; END registern; ARCHITECTURE behavior OF registern IS BEGIN PROCESS (clk) BEGIN IF clk' EVENT AND clk='1' THEN IF (reset ='0') THEN    --synchronous reset Q<=(OTHERS=>’0’); ELSIF (L ='0') THEN Q<=D;...

  • 8.(5 points).There is an error in following VHDL code. Find the error and correct (only that...

    8.(5 points).There is an error in following VHDL code. Find the error and correct (only that line of code). LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY dec2to4 IS PORT (i IN STD LOGIC VECTOR (1 DOWNTO 0); : En IN STD_LOGIC; d OUT STD LOGIC); END dec2to4; ARCHITECTURE dataflow OF dec2to4 IS BEGIN SIGNAL Eni: STD_LOGIC_VECTOR(2 DOWNTO 0); Eni <= En & i; -concatenate signals WITH Eni SELECT d <"0001" WHEN "100" "0010" WHEN "101", "0100" WHEN "110", "1000" WHEN "111", 0000"...

  • Please write the code in VHDL 1. An entity named reorder has an 8-bit std_logic_vector input...

    Please write the code in VHDL 1. An entity named reorder has an 8-bit std_logic_vector input and an 8-bit std logic_ vector output. The bits of the entity's output vector have the reverse order of the bits of its input vector. The architecture must use a single concurrent call to a function The function, named reorder_vec, is defined in the declaration section and returns a std_logic vector whose bits have the reverse order of the bits in the std_logic vector...

  • Please Write it in VHDL and complete the following code Create an entity called "regs" where...

    Please Write it in VHDL and complete the following code Create an entity called "regs" where you infer a true dual port (both ports can independently either read or write to any location) memory consisting of 32 16-bit words (64 Bytes). It should have the following black box interface and behavior: entity regs is port clk, en, rst in std_logic; İdl, İd2 : in std logic vector (4 downto 0); __ Addresses wr_enl, wr_ en2 in std logic dinl, din2...

  • Name: ·5. (10 lts) Find and correct errors in the following VHDL ed. IEEE ; library use IEEE . STD LOGIC-1104 . all...

    Name: ·5. (10 lts) Find and correct errors in the following VHDL ed. IEEE ; library use IEEE . STD LOGIC-1104 . all; entity cicuitl is port (a, b, elk: in STD_LOGIC: This part of the code its correct.That is, the entity definition and the 1ibraries are written correctly S out STD LOGIC) ond; architecture synth of eicuiti is begin This part of the code ธhould be a process that groups input a and input b together to forn a...

  • (15 points) Your colleague is trying to code a VHDL model for a 7419 register. Review...

    (15 points) Your colleague is trying to code a VHDL model for a 7419 register. Review the code on the next page and make any and all correction correct working model. Note the function model. Note the function table and additional information regarding need to solve this problem. DL model for a 74194 4-bit bidirectional universal shift tions that are necessary to produce a al information regarding the problem that you Control Signals Mode CirN SI SO Outputs 1 1...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT