UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Contributor
Contributor
1,055 Views
Registered: ‎07-04-2017

Accessing PS values from PL

Hello everyone,

 

I wonder if it's possible to access PS values such as ALU result or MMU values (such as virtual address, page tables) while PS running an operating system.

 

I know there is a function virt_to_phys() but I believe making this process in hardware will be faster and I want to create an custom ip and an application that works together so it would be better in hardware.

 

Thank you all and have a nice day!

0 Kudos
6 Replies
Xilinx Employee
Xilinx Employee
969 Views
Registered: ‎07-30-2007

Re: Accessing PS values from PL

I don't think so? The ACP port will allow cache snooping, but I believe what you are asking for are private registers.
0 Kudos
Explorer
Explorer
960 Views
Registered: ‎06-19-2015

Re: Accessing PS values from PL

Hi @ercumentkaya @dylan

 

I think its possible if you integrate assembly language code in your c code.

 

Thanks

Madhu

0 Kudos
Contributor
Contributor
952 Views
Registered: ‎07-04-2017

Re: Accessing PS values from PL

Hi @dylan and @madhu.mami60

 

Thank both of you for responses.

 

@dylanIf it's not possible, how virt_to_phys() or virt_to_page() is implemented? I believe if OS can access these registers, so these registers must be accessed by hardware. Also to implement DMA, these registers are also required, right?

 

@madhu.mami60 It could be a solution, but if there is an hardware solution, I prefer that. Because I want to create a custom ip.

 

Thank you, have a nice day.

 

0 Kudos
Explorer
Explorer
939 Views
Registered: ‎06-19-2015

Re: Accessing PS values from PL

Hi @ercumentkaya

 

I think its a small function for converting virtual address to physical address, it will not include much processing/calculations... So why you are so worried to move that to Hardware?

Can you give the function description of virt_to_phys()...

 

Thanks

M

0 Kudos
Contributor
Contributor
920 Views
Registered: ‎07-04-2017

Re: Accessing PS values from PL

Hi @madhu.mami60

 

I'll not use Linux. I'm trying to use these feature on other OS that can be run on Zybo. If I use virt_to_phys(), I need to implement these function too. If it can be done in hardware, I'll need only a driver. (Correct me if I'm wrong, I'm really a newbie)

 

I read that that function can be used only kernel space. You can find here where this function mentioned.

 

Thank you very much.

 

E.

0 Kudos
Explorer
Explorer
906 Views
Registered: ‎06-19-2015

Re: Accessing PS values from PL

Hi @ercumentkaya

 

I have seen the definition of that functuin. What ever the OS, virt_to_phy() is only addition or deletions or some shifting of the address, better it run by processor only.

If you bring that to pl, it becomes more overhead, in the way writing the values to pl, getting back. Dont worry about that small function.

 

Moving a function to hardware is a good idea when that function takes much processing time.

 

Thanks

M

0 Kudos