EmbDev.net

Forum: FPGA, VHDL & Verilog uart fifo full


von Anan H. (Company: ISO) (anannhasasneh)


Rate this post
useful
not useful
hello.

from pang chu book

"""The full and empty status of the respective FIFO buffers can be
tested by consecutively receiving and transmitting more than four data 
words.
my question is it possible to increase the number of data word that fifo 
can contain"""


in the uart code the fifo just 4 data words like when u send from 
hypertermianl word "" hello""
the fpga board turn it back like this "hellh"

it is possible to increase it, to make the word " hello " when i send 
from hypertermianl to fpga .. the fpga turn it back to hyperwindow " 
hello" not hellh"?

if it possible how can i do it ? if it not, why??!

thanks alot ..

: Edited by User
von René D. (Company: www.dossmatik.de) (dose)


Rate this post
useful
not useful
> if it possible how can i do it ? if it not, why??!

Yes this possible. the next size is 8,15,32,64,128.


You have to increase the vector type, that is yuse for RAM and also the 
addresssize of FIFO.

von Anan H. (Company: ISO) (anannhasasneh)


Rate this post
useful
not useful
do u mean
1
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3
use IEEE.NUMERIC_STD.ALL;
4
5
entity fifo is
6
  generic(
7
    B: natural := 8;  -- Number of bits
8
    W: natural := 4    -- Number of address bits
9
  );
10
  port(
11
    clk, rst: in std_logic;
12
    rd, wr: in std_logic;
13
    w_data: in std_logic_vector(B-1 downto 0);
14
    empty, full: out std_logic;
15
    r_data: out std_logic_vector(B-1 downto 0)
16
  );

do u mean the w to change to 5? this is the number of adress bits in 
fifo ..

add it already the number of bits is 8

von René D. (Company: www.dossmatik.de) (dose)


Rate this post
useful
not useful
Anan H. wrote:
> do u mean
>
>
1
library IEEE;
2
> use IEEE.STD_LOGIC_1164.ALL;
3
> use IEEE.NUMERIC_STD.ALL;
4
> 
5
> entity fifo is
6
>   generic(
7
>     B: natural := 8;  -- Number of bits
8
>     W: natural := 4    -- Number of address bits
9
>   );
10
>   port(
11
>     clk, rst: in std_logic;
12
>     rd, wr: in std_logic;
13
>     w_data: in std_logic_vector(B-1 downto 0);
14
>     empty, full: out std_logic;
15
>     r_data: out std_logic_vector(B-1 downto 0)
16
>   );
>
> do u mean the w to change to 5? this is the number of adress bits in
> fifo ..
>
> add it already the number of bits is 8

B have to be 8. This is 8bit -> 1byte

I mean W.

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.