Introduction

hello. I'm Nami, and my assignment has finally been officially decided.
I was assigned to a team that evaluates and responds to tools and devices.

Last time, I wrote an article about a power supply IC called Enpirion® that supplies power to an FPGA.
I think that if you have the knowledge so far, you will surely be able to develop with FPGA.
For that, you need Quartus®, the Intel® FPGA (formerly Altera) development tool!
Therefore, this time, I would like to introduce the useful functions of Quartus Prime.

What is Quartus Prime?

What is Quartus Prime? Tools for Designing with Intel® FPGAs is.
if you have this
·Circuit design
・Logic synthesis
・Placement and routing
・Timing verification
・Programming to the device
We can perform all the minimum necessary processes for development.
This tool is a must when using Intel® FPGAs.

By the way, "circuit design" is the previous article What are FPGAs? Super beginners It is a digital circuit design by the hardware language written in .

Pinout

The other day, Synchronous Kuramii wrote a two-part article on how to assign pins in Quartus.
Rescue the lost pin! FPGA Pinout Part 1
Rescue the lost pin! FPGA Pinout Part 2
So, this time, as a supplement, I learned about the convenient function of Quartus that can be used for pin assignment.

The method introduced by Kurami was to use the Pin Planner to do the pin placement with a GUI.
But I'm sure there are people out there who prefer text-based software over GUI...
Did you pick up on those thoughts? There was even a text-based way to place pins!

Text-based pin placement

The first thing you need is a file called the Quartus Settings File ( .qsf ).
A .qsf is a file that stores all settings and constraints for Quartus Prime except timing.
By editing this file, you can change settings and execute programs in command format.
Let's open this file now.

Figure 1 How to open a .qsf file

"File menu" on Quartus ⇒ "Open" ⇒ "Select .qsf file"
You can easily open it. However, please note that it may not be displayed due to filtering at first.

When I opened it... It's like this.

Figure 2 Contents of the .qsf file

If you look at the pin information, it says "set_location_assignment PIN_~ -to ~".
This is the part of the .qsf file that sets the pinout.
Here you can see which pins are located where.

Let's edit this screen.
This time, let's change "PIN_P8-to a" to "PIN_A6-to a".

Figure 3 Editing pin information in .qsf file

After saving, let's check if the changed settings are reflected in Pin Planner.

Figure 4 Pin Planner

It's been changed. You can really change the text base!
But I don't know how to use this, so I asked for an example of how to use it.

Change pin assignment using comment out

For example, you have made a pin arrangement with Pin Planner, but the pin arrangement is not finalized yet and there is a possibility that it will be changed.
In such a case, don't you want to leave the history of the pin arrangement just in case?

that's right. Text-based pin placement is possible. the method is easy.

If you comment out (disable and leave a comment) the purpose pin arrangement information part of .psf, you can easily initialize and leave a history!
Since the history remains, when you want to restore the pin arrangement setting, just uncomment that part!

Figure 5 Initialization by commenting out

In addition, I will use this history to restore some of the pin layouts!

Figure 6 Undo pinout using history

Summary

・Quartus Prime is an essential tool for Intel® FPGA development and can execute all FPGA design flows.
・ Easy text-based pin placement method!
1. Open .qsf file
2. Edit pinout information for set_location_assignment

Quartus Prime has many useful functions.
Also, when I learn some useful functions, I will write an article, so please look forward to it! !