Sorry, in my last reply it is *page 168 section 3.2.52*, not 3.5.52 On Monday, 10 March 2014 16:34:10 UTC, Luis wrote: > > Hi Paddu, > I believe it is a 32-bit register (I found no mention of 64-bit registers > in the c9 coprocessor). When it is overflown it resets to 0, in my code I > take this into account. It looks like you can generate overflow interrupts > (page 168 section 3.5.52) but I haven't used them. > > Hope this helps. > > Regards, > > Luis > > On Monday, 10 March 2014 15:00:26 UTC, Paddu wrote: >> >> >> Hi, >> >> Thank you for sharing very useful information. >> With your suggestions currently I am able to read the Cycle count using >> using this register. >> Please let me ask more question about CCNT register. >> >> Just for the confirmation, I would like to know is this a 32 bit >> register? or 64 bit? >> and what would happen if the count value is overflown, will the register >> reset to "0" ? >> >> Regards >> Paddu. >> >> >> On Tuesday, February 25, 2014 11:39:24 PM UTC+9, Luis wrote: >>> >>> Hi Paddu, >>> >>> The Cortex-A8 has a Performance Monitor Control Register (coprocessor >>> c9), you can check the documentation for the registers here (page 154, >>> section 3.2.42): >>> >>> http://infocenter.arm.com/help/topic/com.arm.doc.ddi0344k/DDI0344K_cortex_a8_r3p2_trm.pdf >>> >>> For a simple example of the code check this page: >>> http://stackoverflow.com/questions/3247373/how-to-measure-program-execution-time-in-arm-cortex-a8-processor >>> In there they use assembly to configure and read the registers for the >>> Cortex-A8, so it can be ported to any OS I believe. >>> >>> The Peformance Monitoring Unit is very cool, there's a ton of events you >>> can measure there, you can record up to 5 events (including the Clock >>> Cycles CCNT). >>> >>> >>> If you were using Linux it already has the implementation done for you, >>> you only need some libraries (found in >>> http://perfmon2.sourceforge.net/hw.html ). >>> >>> Hope this helps. >>> >>> Best Regards, >>> >>> Luis >>> >>> On Tuesday, 25 February 2014 03:02:31 UTC, Paddu wrote: >>>> >>>> Thank all for the kind reply. >>>> >>>> @liyaoshi-> I could find the link you have mentioned. >>>> >>>> @Grissiom -> Currently we are not using Linux, we are using >>>> Starterware. >>>> >>>> I shall see if we could implement this using a ASM code. >>>> >>>> >>>> On Tuesday, February 25, 2014 11:56:11 AM UTC+9, liyaoshi wrote: >>>>> >>>>> From this link , you can see >>>>> >>>>> readtsc() means this only support on x86 ,tsc register is 64bit >>>>> register and clock with main clock , on x86/64 this is can very precise >>>>> >>>>> On ARM, use generic PIT,(maybe you should write your own driver ) , >>>>> >>>>> only limit is almost PIT register is 32bit >>>>> >>>>> >>>>> 2014-02-25 10:49 GMT+08:00 Grissiom <[email protected]>: >>>>> >>>>>> On Mon, Feb 24, 2014 at 10:26 PM, Paddu <[email protected]>wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> We need some advice in measuring Beaglebone CPU(Cortex-A8) clock >>>>>>> cycles. >>>>>>> Is there any way to measure the CPU cycles and use it inside the >>>>>>> program? >>>>>>> I have heard about "ccnt" register but don't know how exactly could >>>>>>> we use that in the program. >>>>>>> Please let me know if there is a reference or pointers on how to >>>>>>> implement the code. >>>>>>> >>>>>>> >>>>>> Do you want to measure cycles in Linux program or baremetal program? >>>>>> If you are on Linux, this link: >>>>>> >>>>>> http://halobates.de/modern-pmus-yokohama.pdf >>>>>> >>>>>> may help you. If not, read the PMU section in the ARM ARM. >>>>>> >>>>>> -- >>>>>> Cheers, >>>>>> Grissiom >>>>>> >>>>>> -- >>>>>> For more options, visit http://beagleboard.org/discuss >>>>>> --- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "BeagleBoard" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> For more options, visit https://groups.google.com/groups/opt_out. >>>>>> >>>>> >>>>>
-- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
