Forum: FPGA, VHDL & Verilog UART on PCIe device is not working

Author: Viya Vijayan (viyaaloth)
Posted on:

Rate this post
0 useful
not useful

I am trying to monitor data from PCIe device (spartan 6 FPGA, 
XC6SLX45T-3FGG484) in cutecom terminal on linux through UART.

I have written some data from root complex(linux in my case) to my PCIe 
device( Spartan 6 FPFA) .Then I tried to monitor it in a serial terminal 
via UART.

My FPGA is working in 100MHZ, I have changed DIVISOR accordingly for my 

parameter Data_Bits = 8,
StopBits_tick = 16,
DIVISOR = 652,
DVSR_BIT = 10,
FIFO_Add_Bit = 4

But I am not getting any output in terminal

Any help would be appreciated.

Thanks & Regards,

Author: Lothar Miller (lkmiller) (Moderator)
Posted on:

Rate this post
0 useful
not useful
Viya V. wrote:
> But I am not getting any output in terminal
Did you check you UART implementation stand alone (without the PCIe 
bridge): only sending data to the UART and shwing it on LEDs and 
sending data from the UART to the terminal?

Does your PCIe interface work?
Did you test it by sending data to LEDs and reading data from switches?

> Any help would be appreciated.
You must split up this singular huge problem in small problems. Then you 
can verify and debug each small problem. If each component ist working 
on its own, then you can connect them together...

Author: BigChip (Guest)
Posted on:

Rate this post
0 useful
not useful
Hi Vija,

your problem description will enable nobody without crystal ball to help 
you in your situation...

you wrote that you´ve got a PCIe device with an UART...
That's a rather complicate setup for an FPGA novice and I´m afraid you 
are such one?

So here some question to help out with some informations for me and 

Could you simulate your design?
for later detailed help, language: VHDL,Verilog mixed?
Are the pin constraints set? I`m assuming that you used the PCIe 
IP-Output as your starting point?
Could you be sure that you could do writes to your PCIe Node (Device 
Memory Mapping, Access rights ?) - How do you handle this - Do you use 
some code examples, using some helper APIs, wrote an driver plain by 
your own?
Could you control some simple IO's (LED?) from your PCIe Node?
Could you use an Oscilloskop or Logicanalyzer for further analysis?

What kind of Hardware/Softwaresetup you are using ?
ISE Version?
Do you use an S6-Evalboard (known to work well) or might there be 
physical/electrical problems?
What kind of translation you are using for connecting the FPGA towards 
your Linux machine?`
UART-USB Chip/Translator etc...




Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [vhdl]VHDL code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]

Bild automatisch verkleinern, falls nötig