Since it was decided last time to configure in AS mode, the next step is to select a ROM.
Altera's configuration ROM used for AS mode configuration is the EPCS series.
We thought that the capacity of the configuration ROM would vary depending on the size of the design. I wonder how to determine the size of the EPCS when there is a possibility of adding more designs later on...
At first, I checked the number of Total Logic Elements from the compile report, but this did not tell me how many Mbits of EPCS I should use.
Now I don't know what to do...
I asked my senior staff and was told that the size of the configuration ROM depends on the device, not on the design. Does this mean that if I make a 1-bit counter or a clock more complicated than a counter, the ROM size will be the same? I am getting confused.
Let's go back to the starting point.
First, I thought I should know the structure of the device. Inside the device, we can see that Logic Elements are lined up in a grid pattern.
The Cyclone® IV E device we are using here has a vertical array of multiplier blocks and memory blocks called M9Ks. At the four corners of the device are PLLs.
The Cyclone® IV E device did not use 100% of its resources to perform the clock function.
If it did not use 100% of its resources and the configuration ROM is fixed for the size of the device, does that mean that all of the used/unused information for each resource is written to the ROM? I think you are writing all the information for each resource used/unused.
FPGAs are made up of transistors, and it seems that circuits are realized by connecting gates and setting ON/OFF for wiring switches.
Therefore, the capacity of the configuration ROM depends on the device, right?
So how much space is needed for the EP4CE10 on the board?
I found a list in Section III → Configuration File Size of the handbook! The chart below is the list.
The table above summarizes the rbf file size.
rbf file stands for Raw Binary File and is a file that contains only data without any header or footer information.
Since it is a data-only file, it is also used for configuration ROM estimation.
The table above shows that EP4CE10 requires approximately 3 Mbits of space.
So, what kind of capacity is available for EPCS?
The EPCS handbook has a list of these as well. The following is a list of EPCS.
From the above table, it seems that an EPCS4 can hold the configuration data of a device.
However, I felt that EPCS4 would be a waste of space, since the actual data size is only about 3 Mbits. Then I read in the Cyclone® IV handbook that the configuration data can be compressed.
If we could compress the configuration data, we might be able to reduce the size of the EPCS to one smaller size. If so, we would succeed in reducing the cost of the board!
How much compression ratio is 35% to 55%?
The compression ratio of configuration data depends on the design.
It is hard to tell without generating the file with the compression option enabled, since it depends on the design.
If you are designing a board in parallel, you will not be able to proceed without knowing the size of the configuration ROM until the design is complete.
This is why the guide values are listed in the handbook.
I calculated the configuration data at 35% of the minimum value, which is approximately 2 Mbit...
Unfortunately, the configuration data is not in EPCS1 at all! That's just barely enough to fit in EPCS1. A closer look at the handbook showed that EPCS1 could not be used with Cyclone® IV.
Since EPCS4 is the smallest capacity, we decided to use EPCS4 and went through the internal ordering process.
Here is a list of Cyclone IV E devices with 35% compression applied to the rbf.
By the way, how long will it take to get up and running when we can configure in AS mode?
In the next article, we will study the time it takes for configuration.