Arm Community
Site
Search
User
Site
Search
User
Groups
Arm Research
DesignStart
Education Hub
Graphics and Gaming
High Performance Computing
Innovation
Multimedia
Open Source Software and Platforms
Physical
Processors
Security
System
Software Tools
TrustZone for Armv8-M
中文社区
Blog
Announcements
Artificial Intelligence
Automotive
Healthcare
HPC
Infrastructure
Innovation
Internet of Things
Machine Learning
Mobile
Smart Homes
Wearables
Forums
All developer forums
IP Product forums
Tool & Software forums
Pelion IoT Platform
Support
Open a support case
Documentation
Downloads
Training
Arm Approved program
Arm Design Reviews
Community Help
More
Cancel
Developer Community
Tools and Software
Software Tools
Jump...
Cancel
Software Tools
Arm Development Studio forum
Accelerator Coherency Port
Tools, Software and IDEs blog
Forums
Videos & Files
Help
Jump...
Cancel
New
Replies
6 replies
Subscribers
127 subscribers
Views
4218 views
Users
0 members are here
Related
Accelerator Coherency Port
Offline
Shakith Fernando
over 7 years ago
Note: This was originally posted on 25th January 2013 at http://forums.arm.com
Hi all,
I'm trying to use the AcceleratorCoherency Port of the ARM A9MPCORE in the Xilinx Zynq platform (
http://www.xilinx.co...vices/index.htm
).
1.[size="2"] [/size]I have a functionaldesign where DMA in the FPGA region is able read and write data through the ACP.But is there direct way to verify that the data is coming from the cacheitself. Only option is to measure cache hits using the PL310 cache controllerevent registers againist a known data set size. But it's a not exact solution,as there may be cache hits in the L1 cache hits instead of L2.
2. As mentioned here (
http://forums.arm.co...pcore-acp-port/
),I downloaded the Ds5 tools to get access to the reference design, but there is nospecific target design for the ACP. The startup code that enables MMU, L1 cachesand SCU should be enough to make sure the ACP is getting the data from cache?
3. Cacheable region setting can be set in the MMU table. Butdoes it guarantee exclusive access to a fixed memory region. Maybe if a linux osis running, then it can cause cache thrashing. Is there way to set priority forthe region?
4. Is there support for linux for this. As I understand the ACP istechnically a hardware thing and should be transparent to software. Only thing isto do would be to expose the memory region from kernel space to user space togive it to the DMA engine.
Thanks in advance.
Parents
Offline
Shakith Fernando
over 7 years ago
Note: This was originally posted on 7th February 2013 at
http://forums.arm.com
Hi all,
I'm trying to verify the ACP operation byusing Performance Monitor Unit (PMU). I'mworking on the Xilinx zynq platform with the arm a9 cores.
The PMU is not enabled by default boot codeprovided by Xilinx.
I would assume there would be at least 3ways to access this and control it. Memory mapped registers, arm c15 control processorand debug access port(DAP).
1.[size=2] [/size]According the Zynq TechnicalReference Manual (
http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
page 85), its only accessible by actually two ways arm c15 control processor anddebug access port. But surprisingly, the manual provides software controlled registerspace for in page 881. Does this mean it's possible to memory mapped control ofthe PMU? I tried a memory mapped implementation and it didn't work. There couldsomething on trustzone that needs be enabled to control the PMU( which I didn'ttry yet)?
2.[size=2] [/size]Second option was using the DAPdebug access port (DAP). According to
http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdfpage 581
, if Jtag mode is selected to be in the independent mode, DAP can beaccess through a JTAG pins either through the mio or the emio sides. At leaston the Zynq Zedboard there is no physical port for this. Mio or emio pints needsto forwarded to PMod ports and connected with something like this (
http://www.em.avnet.com/en-us/design/drc/Pages/ZedBoard-Processor-Debug-Adapter-.aspx
)to get access to the DAP. Is this the only way to access the debug port.
3.[size=2] [/size]Alternatively option is thecp15 option. I imported an example assembly code from Arm DS5 tools(Optimization3 example attached here). The problem is that Xilinx arm gcc tool chain from codesourcerytool has a complete different assembler compared to the armgcc. EXPORT, PROC,ENDP all of this are specific to the ARM assembler. The next step was to modify and inline thereference assembly code in to c file to be compiled, which worked for one functionI tested. Are there any compiler flags that I can enable to use ARM directivesin gnu assembly? And why is this so?
Only option is thento translate the arm assembly to gnu assembler format. Before that, I wouldlike to confirm there is no direct way to use either memory mapped or the debugaccess port above to control the PMU. Or any other solutions to any of thethree options?
Thanks in advance.
Cancel
Up
0
Down
Reply
Cancel
Reply
Offline
Shakith Fernando
over 7 years ago
Note: This was originally posted on 7th February 2013 at
http://forums.arm.com
Hi all,
I'm trying to verify the ACP operation byusing Performance Monitor Unit (PMU). I'mworking on the Xilinx zynq platform with the arm a9 cores.
The PMU is not enabled by default boot codeprovided by Xilinx.
I would assume there would be at least 3ways to access this and control it. Memory mapped registers, arm c15 control processorand debug access port(DAP).
1.[size=2] [/size]According the Zynq TechnicalReference Manual (
http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
page 85), its only accessible by actually two ways arm c15 control processor anddebug access port. But surprisingly, the manual provides software controlled registerspace for in page 881. Does this mean it's possible to memory mapped control ofthe PMU? I tried a memory mapped implementation and it didn't work. There couldsomething on trustzone that needs be enabled to control the PMU( which I didn'ttry yet)?
2.[size=2] [/size]Second option was using the DAPdebug access port (DAP). According to
http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdfpage 581
, if Jtag mode is selected to be in the independent mode, DAP can beaccess through a JTAG pins either through the mio or the emio sides. At leaston the Zynq Zedboard there is no physical port for this. Mio or emio pints needsto forwarded to PMod ports and connected with something like this (
http://www.em.avnet.com/en-us/design/drc/Pages/ZedBoard-Processor-Debug-Adapter-.aspx
)to get access to the DAP. Is this the only way to access the debug port.
3.[size=2] [/size]Alternatively option is thecp15 option. I imported an example assembly code from Arm DS5 tools(Optimization3 example attached here). The problem is that Xilinx arm gcc tool chain from codesourcerytool has a complete different assembler compared to the armgcc. EXPORT, PROC,ENDP all of this are specific to the ARM assembler. The next step was to modify and inline thereference assembly code in to c file to be compiled, which worked for one functionI tested. Are there any compiler flags that I can enable to use ARM directivesin gnu assembly? And why is this so?
Only option is thento translate the arm assembly to gnu assembler format. Before that, I wouldlike to confirm there is no direct way to use either memory mapped or the debugaccess port above to control the PMU. Or any other solutions to any of thethree options?
Thanks in advance.
Cancel
Up
0
Down
Reply
Cancel
Children
No data
More questions in this forum
By title
By date
By reply count
By view count
By most asked
By votes
By quality
Descending
Ascending
All recent questions
Unread questions
Questions you've participated in
Questions you've asked
Unanswered questions
Answered questions
Questions with suggested answers
Questions with no replies
Suggested Answer
Debugging kernel: OS support not working for Linux 5.4
0
Kernel Developers
External Hardware Debug
Debugger
232
views
5
replies
Latest
18 hours ago
by
sgoldschmidt
Not Answered
DS-5 connect fail when cortex-r5 is in lock-step mode
0
540
views
8
replies
Latest
20 hours ago
by
Jeffrey_lin
Suggested Answer
DS-5 bare metal wait error after run "debug"
0
DS-5 Development Studio
Debugging
Arm Compiler 5
Memory
21314
views
14
replies
Latest
4 days ago
by
prasadghole
Suggested Answer
ARM development studio with ARM Juno r2 board
0
Juno Arm Development Platform
Arm Development Studio
Products
Arm Support
303
views
2
replies
Latest
8 days ago
by
Ronan Synnott
Answered
"Unable to execute remote query (response code 503) " issue
0
312
views
1
reply
Latest
11 days ago
by
Ronan Synnott
>
View all questions in Arm Development Studio forum