In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-01-30 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >
Share
Shulou(Shulou.com)06/01 Report--
FPGA design how to correctly use in_system_ibert, many novices are not very clear about this, in order to help you solve this problem, the following editor will explain in detail for you, people with this need can come to learn, I hope you can gain something.
In_system_ibert IP customized key points the location of serial transceivers
In ISI customization, you need to select the location of the serial transceiver used, as follows:
Insert a picture description here
The corresponding port will also appear at the corresponding IP port. For example, if the figure above selects 2 Quad, that is, 8-channel serial transceivers, then there are 8 corresponding drp interfaces.
But this correspondence is very confusing, how does the specific channel correspond to the drp port signal?
If there is a strict correspondence, then the data manual or other forms need to give the necessary explanation, rather than let the user to guess! People often make the mistake of empiricism, thinking that since you have chosen Quad and channel, you should connect accordingly. I have heard this argument when I am not sure, and believe it, it took me a lot of time to find the corresponding relationship, and finally found nothing, when you use a large number of channels, for example, dozens of channels, then the search for this corresponding relationship will consume your time even more, especially if the transceiver side of the project needs to be tested, there are chaotic channels to use! Whatever the reason, it is for the wiring of the schematic, or for wayward use, such as rx as defined below:
Input [31:0] rx
One Quad is used for every 4 bits, that is, four channels. The corresponding relationship is as follows: rx [0] corresponds to channel x1y39 rx [1] corresponds to channel x1y38 rx [2] corresponds to channel x1y37 rx [3] corresponds to channel x1y36.
Rx [4] corresponding channel x1y35 rx [5] corresponding channel x1y34 rx [6] corresponding channel x1y33 rx [7] corresponding channel x1y32
It seems to be a little interesting, this kind of constraint is reversed, it's okay, it's acceptable. If it is the following correspondence: rx [0] corresponding channel x1y36 rx [1] corresponding channel x1y37 rx [2] corresponding channel x1y38 rx [3] corresponding channel x1y39
Rx [4] corresponding channel x1y32 rx [5] corresponding channel x1y33 rx [6] corresponding channel x1y34 rx [7] corresponding channel x1y35
This must be condemned. If there are dozens of channels, you can tell me how to play. If the in_system_ibert needs strict channel correspondence, then the signal connection will become very unintuitive, leaving developers at risk of burst veins.
Or look at the data manual, then a humble IP core, you also need to read the data manual when you are not sure! If there is an on-site support engineer, don't ask this question, because he probably hasn't read his own data manual. He will tell you in accordance with habitual thinking that if you don't need strict channel correspondence, other people's IP cores let you choose what to do, and then you believe it and make random guesses, er, gt1 corresponds to x1y39, or gt1 corresponds to x1y0, wasting time, and the project ends up vaguely doubting yourself. Or the final result is no problem, still think that their own luck is good, the choice is right, and output documents, tell teammates, you have to do this, I have tried!
Take a look at the data manual: The ISI core has no transceiver location constraints, nor are any attributes updated for selected transceivers. The selected transceiver information is only used to create an ISI template and group/display the selected transceiver in the Serial IO analyzer after downloading the bit file.
Translate:
The ISI kernel does not have transceiver location constraints, nor does it update any properties for the selected transceiver. The selected transceiver information is used only to create the ISI template and to group / display the selected transceiver in the serial IO parser after downloading the bit file.
Obviously, there are no location constraints, and the selected transceiver information is only used to create an instantiation template. I'll tell you how many gt there are, and you'll be done with it.
Conclusion: the place closest to the truth is that in the data manual, we (except the designer) are all readers, and all kinds of readers tend to ignore some of the information or judge according to habitual thinking, therefore, take the question to the data manual to find the answer.
How to instantiate in_system_ibert?
Since the IP does not provide an example program, there is still some doubt about how to use the IP correctly. Don't ask anyone at this time, because the people you may ask may only have heard of, or seen, the real hand-in-hand experience, practical people, it may be difficult to accurately meet. If you ask, they will tell you, just connect the drp interface to it, and then take a look at your own application scenarios, such as aurora or jesd,srio, which have been customized. Damn it, why don't you have a drp port? how can I connect with the drp interface of in-system-ibert? When you can't find the drp interface, they may tell you that it is inside the ip core. If you doubt it, you even blame your lack of seniority?
Let me tell you, IP core is not easy to change, or do not change, if you can not find the drp interface, you can try to look at the data manual, or try to remove some options, or add some options, but I suggest or take a look at the receipt manual, the data manual will have a description of that interface, you will get the answer.
It is possible to solve a lot of doubts here, but it is not enough, there is no example to refer to, and there is no example project, I will not rest assured that I am connected correctly, or whether I am using the right IP core, because once I instantiate it and generate bit streams, the project will consume a lot of time when the project is large.
In order to improve the success rate, we still need to find an example program used by the ip core to study. Here, it is recommended to use transceiver IP. There is an option to instantiate in-system-ibert. After you check it, you can generate an example program at random, and you can see how the ip core is used. It is the most direct way.
For example:
Generate an example program:
Bold style
Look at the program to see how to use in-system-ibert correctly, and how to use it with the VIO IP core, you can clearly see the solution!
You need to find out for yourself, not ask xxx.
Is it helpful for you to read the above content? If you want to know more about the relevant knowledge or read more related articles, please follow the industry information channel, thank you for your support.
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.