Introduction
Hello, my name is Nami.
I have been assigned to a team that evaluates and handles tools and devices.
In the last issue, I wrote about Enpirion®, a power supply IC that supplies power to FPGAs.
I am sure that if you have this level of knowledge, you will be able to develop with FPGAs.
To do so, you need Quartus® Prime, an Altera® FPGA development tool!
In this article, we will introduce some useful features of Quartus Prime.
What is Quartus Prime?
Quartus Prime is a tool for designing Altera® FPGAs.
With it, you can
- Circuit Design
- Logic synthesis
- Place and Route
- Timing verification
- Device programming
All of the minimum processes required for development can be performed.
This tool is essential when using Altera® FPGAs.
By the way, "circuit design" refers to digital circuit design using hardware language, which I wrote about in my previous article, " What is FPGA? ”.
Pin Assignment
The other day, our synchronizer Kuramii wrote a two-part article on how to arrange pins on Quartus.
So this time, as a supplement to that article, we learned about some useful features of Quartus that can be used for pin placement.
The method Kuramii introduced was to use Pin Planner to do pin placement with a GUI.
But there must be people out there who prefer a text-based method instead of a GUI....
We hope you understand that, and have found a text-based method for pin placement!
Text-based Pin Placement
The first thing you need is a file called Quartus Settings File (.qsf ). .qsf is the file that stores all settings and constraints for Quartus Prime, except for timing.
By editing this file, you can change settings, run programs, etc. in command format.
Let's open this file.
Figure 1 Opening the .qsf file
File menu" on Quartus ⇒ "Open" ⇒ "Select .qsf file"
This is all you need to do to open the file. But please note that the file may be filtered and not displayed at first.
When you open it.... It looks like this.
Figure 2 Contents of .qsf file
If you look at the pin information, you will see "set_location_assignment PIN_~ -to ~".
This is the part of the .qsf file that sets the pin placement.
This is where you can see which pins are placed where.
Now, let's make some edits on this screen.
In this case, we will use "PIN_ P8 -to a" to "PIN_ A6 -to a" this time.
Figure 3 Editing pin information in .qsf file
After saving, check to see if the changed settings are reflected in Pin Planner.
Figure 4 Pin Planner
The changes have been made. The changes were really made on a text basis!
But we don't know how to use this, so we asked you to show us an example of its use.
Changing Pin Placement Using Comment Outs
For example, suppose you have made a pin assignment in Pin Planner, but the pin assignment is not yet finalized and may be subject to change. Wouldn't you want to keep a history of the pin assignments just in case?
Yes, you do. You can do that with text-based pin placement. The method is simple.
Simply comment out (disable and leave as commented) the target pin placement information in the .psf file to initialize and keep the history!
The history is kept, so when you want to restore the pin assignment settings, simply uncomment the section!
Figure 5 Initialization by commenting out
Let's try to restore some of the pin assignments using the history!
Figure 6 Undoing pin assignments using history
Conclusion
Quartus Prime is an indispensable tool for developing Altera® FPGAs and can execute the entire FPGA design flow.
The text-based pin placement method is simple!
- Open the ".qsf" file
- Edit the pin placement information in set_location_assignment
I see that Quartus Prime has all kinds of useful features.
If I learn any more useful functions, I will write about them in an article, so please look forward to it!