• 0

Beginner with Nexys A7


Question

Hello Experts,

I am learning verilog and have done some basic design like, implementing basic gates, counters, flip-flop etc.

I have Nexys A7 FPGA board, I want to expore and with this intention I wolud like to bulit a simple project like reading analog signal and sending values to computer.

How/from where should I start?

Thank you

Ravi

Edited by Ravi_k
Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 1
1 hour ago, Ravi_k said:

I am learning verilog and have done some basic design like, implementing basic gates, counters, flip-flop etc.

Great! Have you been writing testbench modules to do simulation verification? It's a good practice to have at least one testbench for every design module that you write. Simulation verification should be considered a part of the design process. You can learn a lot from simulation.

1 hour ago, Ravi_k said:

I wolud like to bulit a simple project like reading analog signal and sending values to computer.

Well, your board supports using the XADC functionality so you have 1 MHz ADC input capability without additional expense. Digilent is big on the PMOD ecosystem and has a few alternatives that might be easier for a beginner to work with in terms of designing ADC or DAC interfaces. If you do some reading of projects posted in the Digilent Project Vault you can find numerous code samples to jump start your Verilog education.

The easiest FPGA platform <--> PC interface is the USB UART. The Project Vault has a number of posts using the UART for debugging or data transfer that can use Serial Terminal programs like Putty on Windows or Linux. 921600 is the fastest baud rate, not requiring flow control, and supported by such applications; it is also robust. You can do 3 or 8 Mbaud UART connections, depending on the USB UART bridge device, with a bit more effort. I've done 12 Mbaud using the FTDI xxH bridges and the D2xx API but this isn't trivial. For most purposes 921600 baud is quite sufficient. Most of my projects include a USB UART for debugging purposes or as a user UI to read/write HDL registers. If a simple serial terminal program isn't sufficient Python plus PySerial is a good way to communicate with your FPGA board from a PC.

I highly encourage you to pursue the HDL design flow.  

Edited by zygot
Link to post
Share on other sites
  • 0

Hello Zygot,

Thank you very much for the reply and detailed information.

 

On 4/1/2021 at 5:41 PM, zygot said:

Have you been writing testbench modules to do simulation verification?

Yes, I have written some tb, but not for all design.

On 4/1/2021 at 5:41 PM, zygot said:

If you do some reading of projects posted in the Digilent Project Vault you can find numerous code samples to jump start your Verilog education.

Can you please send me the link, I not sure which is the correct one for me...

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now