上海妇科疾病研究所 上海女性不孕医院 上海引产医院 无痛引产痛不痛 上海人流医院 白癜风治疗医院 上海小儿脑瘫医院 上海女子医院
VDK的API描述-ADI操作系统-技术中心-国内专业ADI仿真器,Blackfin开发板,DSP芯片,软件算法,解决方案提供商-北京四维卓信电子有限公司
用户名: 密码:
主页 设为首页 加入收藏
      产品中心       技术中心       下载中心        社区新闻        诚聘英才       大学计划        关于我们       技术论坛
  您的当前位置:ADSP开源社区 >> 技术中心 >> ADI操作系统 今天是:
技术中心  
SigmaDSP
SHARC
A2B音频总线
Blackfin
ADI操作系统
ADSP-218X
TigerSAHRC
ADI DSP仿真器
产品导航
ADI DSP仿真器
SigmaDSP开发板
ADI A2B总线开发板
SHARC DSP开发板
销售网络
ADI操作系统  
VDK的API描述
[ 作者:Open ADSP ] [ 来源:ADSP开源社区 ] [ 发布时间:2011-4-13 ]

    VDK实际上是一种带API(Application ProgramInterface)函数库的实时操作系统内核。文中所有的VDK函数均在API函数库中,有精确的周期数和运行时间。

    以下包含了三个DSP和两个不同版本的VDK

<---Timing in Cycles周期 --->   <-Timing in MicroSeconds时间->
vdsp5.0 vdsp4.5 vdsp3.5   vdsp5.0 vdsp4.5 vdsp3.5  
Update 6 Base     Update 6 Base    
BF533 BF535 2191   BF533 BF535 2191 API CALL       API函数                                         
 600 mhz  350 mhz  160 mhz   600 mhz 350 mhz 160 mhz  
emu emu-warm emu   emu emu-warm emu  
73 Not Applicable Not Applicable   0.12 Not Applicable Not Applicable AcquireMutex <no current owner> 
74 Not Applicable Not Applicable   0.12 Not Applicable Not Applicable AcquireMutex <nested Acquire> 
252 Not Applicable Not Applicable   0.42 Not Applicable Not Applicable AcquireMutex <mutex unavailable, context switch> 
97 107 82   0.16 0.31 0.51 AllocateThreadSlot
96 109 88   0.16 0.31 0.55 AllocateThreadSlotEx
390 459 261   0.65 1.31 1.63 ClearEventBit <no context switch, bit changes>
138 183 97   0.23 0.52 0.61 ClearEventBit <no context switch, bit same>
657 872 686   1.10 2.49 4.29 ClearEventBit <with context switch >
52 98 45   0.09 0.28 0.28 ClearInterruptMaskBits
Not Applicable Not Applicable Not Applicable   Not Applicable Not Applicable Not Applicable ClearInterruptMaskBitsEx
17 25 16   0.03 0.07 0.10 ClearThreadError
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. CloseDevice
515 615 332   0.86 1.76 2.08 CreateDeviceFlag
173 253 169   0.29 0.72 1.06 CreateMessage
448 Not Applicable Not Applicable   0.75 Not Applicable Not Applicable CreateMutex
1777 1839 1193   2.96 5.25 7.46 CreatePool <allocate memory now>
1275 1149 709   2.13 3.28 4.43 CreatePool <allocate memory later>
1746 1809 Not Applicable   2.91 5.17 Not Applicable CreatePoolEx <allocate memory now>
1264 1127 Not Applicable   2.11 3.22 Not Applicable CreatePoolEx <allocate memory later>
651 815 408   1.09 2.33 2.55 CreateSemaphore
1779 2141 1626   2.97 6.12 10.16 CreateThread <lower priority>
1836 2287 1906   3.06 6.53 11.91 CreateThread <higher priority - context switch>
1778 2150 1508   2.96 6.14 9.43 CreateThread <same priority - no context switch>
2949 3459 2673   4.92 9.88 16.71 CreateThreadEx <equal or lower priority>
3018 3604 3267   5.03 10.30 20.42 CreateThreadEx <higher priority - context switch>
394 495 232   0.66 1.41 1.45 DestroyDeviceFlag
159 233 197   0.27 0.67 1.23 DestroyMessage
168 260 445   0.28 0.74 2.78 DestroyMessageAndFreePayload
387 Not Applicable Not Applicable   0.65     DestroyMutex
658 771 394   1.10 2.20 2.46 DestroyPool
389 460 174   0.65 1.31 1.09 DestroySemaphore
1285 1435 1240   2.14 4.10 7.75 DestroyThread <kReady> <delete space now>
208 250 281   0.35 0.71 1.76 DestroyThread <kReady> < delete space later>
199 283 272   0.33 0.81 1.70 DestroyThread <kSleeping>
173 220 236   0.29 0.63 1.48 DestroyThread <kSemaphoreBlocked>
215 305 295   0.36 0.87 1.84 DestroyThread <kSemaphoreBlockedWithTimeout>
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. DeviceIOCtl
69 110 52   0.12 0.31 0.33 DispatchThreadError (with context switch)
334 422 334   0.56 1.21 2.09 ForwardMessage
135 241 162   0.23 0.69 1.01 FreeBlock
323 391 141   0.54 1.12 0.88 Free (from C library, for comparison)
1306 1450 1076   2.18 4.14 6.73 FreeDestroyedThreads (one thread)
29 55 276   0.05 0.16 1.73 FreeMessagePayload
79 101 55   0.13 0.29 0.34 FreeThreadSlot
292 13 14   0.49 0.04 0.09 GetClockFrequency
21 11 16   0.04 0.03 0.10 GetEventBitValue
35 57 66   0.06 0.16 0.41 GetEventData
23 13 16   0.04 0.04 0.10 GetEventValue
19 16 Not Applicable   0.03 0.05 Not Applicable GetHeapIndex
59 83 12   0.10 0.24 0.08 GetInterruptMask
Not Applicable Not Applicable Not Applicable   Not Applicable Not Applicable Not Applicable GetInterruptMaskEx
17 18 12   0.03 0.05 0.08 GetLastThreadError
17 18 63   0.03 0.05 0.39 GetLastThreadErrorValue
43 63 33   0.07 0.18 0.21 GetMessageDetails
29 39 32   0.05 0.11 0.20 GetMessagePayload
27 33 46   0.05 0.09 0.29 GetMessageReceiveInfo
46 66 44   0.08 0.19 0.28 GetNumAllocatedBlocks
45 66 40   0.08 0.19 0.25 GetNumFreeBlocks
38 74 44   0.06 0.21 0.28 GetPriority
48 80 11   0.08 0.23 0.07 GetSemaphoreValue
14 14 13   0.02 0.04 0.08 GetThreadHandle
27 25 49   0.05 0.07 0.31 GetThreadID
67 59 3875   0.11 0.17 24.22 GetThreadSlotValue
1346 3226 40   2.24 9.22 0.25 GetThreadStackUsage
Not Applicable Not Applicable Not Applicable   Not Applicable Not Applicable Not Applicable GetThreadStack2Usage
39 75 40   0.07 0.21 0.25 GetThreadStatus
15 13 10   0.03 0.04 0.06 GetTickPeriod
15 24 11   0.03 0.07 0.07 GetUptime
30 33 42   0.05 0.09 0.26 GetVersion
Not Applicable Not Applicable 12   Not Applicable Not Applicable 0.08 InstallMessageControlSemaphore
371 4982 2099   0.62 14.23 13.12 InstrumentStack
297 426 309   0.50 1.22 1.93 Load Event
197 306 261   0.33 0.87 1.63 LocateAndFreeBlock
16 12 15   0.03 0.03 0.09 LogHistoryEvent
117 174 117   0.20 0.50 0.73 MakePeriodic <no other periodic>
86 147 103   0.14 0.42 0.64 MallocBlock
396 456 225   0.66 1.30 1.41 Malloc (from C library, for comparison)
35 18 27   0.06 0.05 0.17 MessageAvailable
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. OpenDevice
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. PendDeviceFlag
72 97 47   0.12 0.28 0.29 PendEvent <no context switch>
210 292 350   0.35 0.83 2.19 PendEvent <with context switch>
170 194 169   0.28 0.55 1.06 PendMessage <no context switch>
277 406 411   0.46 1.16 2.57 PendMessage <with context switch>
79 118 56   0.13 0.34 0.35 PendSemaphore <available>
261 399 405   0.44 1.14 2.53 PendSemaphore <not available/no timeout>
310 477 434   0.52 1.36 2.71 PendSemaphore <not available, with timeout, no threads>
137 219 90   0.23 0.63 0.56 PopCriticalRegion <no reschedule>
121 173 97   0.20 0.49 0.61 PopNestedCriticalRegions <no reschedule>
114 166 86   0.19 0.47 0.54 PopNestedUnscheduledRegions <no reschedule>
114 176 81   0.19 0.50 0.51 PopUnscheduledRegion <no reschedule>
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. PostDeviceFlag
471 606 612   0.79 1.73 3.83 PostMessage <with context switch>
313 384 314   0.52 1.10 1.96 PostMessage <no context switch>
90 130 80   0.15 0.37 0.50 PostSemaphore <no thread pending>
176 222 193   0.29 0.63 1.21 PostSemaphore <low priority thread pending>
227 312 372   0.38 0.89 2.33 PostSemaphore <high priority thread pending>
57 111 22   0.10 0.32 0.14 PushCriticalRegion
34 39 11   0.06 0.11 0.07 PushUnscheduledRegion
66 Not Applicable Not Applicable   0.11 Not Applicable Not Applicable ReleaseMutex <nested Release>
85 Not Applicable Not Applicable   0.14 Not Applicable Not Applicable ReleaseMutex <no new owner>
215 Not Applicable Not Applicable   0.36 Not Applicable Not Applicable ReleaseMutex <owner change, context switch>
89 130 98   0.15 0.37 0.61 RemovePeriodic <one periodic>
192 281 154   0.32 0.80 0.96 ResetPriority <no context switch>
421 596 473   0.70 1.70 2.96 ResetPriority <with context switch>
358 500 1383   0.60 1.43 8.64 SetClockFrequency
135 183 97   0.23 0.52 0.61 SetEventBit <no context switch>
657 895 684   1.10 2.56 4.28 SetEventBit <with context switch>
51 104 41   0.09 0.30 0.26 SetInterruptMaskBits
Not Applicable Not Applicable Not Applicable   Not Applicable Not Applicable Not Applicable SetInterruptMaskBitsEx
21 35 25   0.04 0.10 0.16 SetMessagePayload
275 426 256   0.46 1.22 1.60 SetPriority <no context switch>
302 476 434   0.50 1.36 2.71 SetPriority <with context switch>
21 28 20   0.04 0.08 0.13 SetThreadError
71 98 58   0.12 0.28 0.36 SetThreadSlotValue
301 509 1397   0.50 1.45 8.73 SetTickPeriod
240 371 372   0.40 1.06 2.33 Sleep <causing context switch>
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. SyncRead
Device dept. Device dept. Device dept.   Device dept. Device dept. Device dept. SyncWrite
94 97 85   0.16 0.28 0.53 Yield <no threads present>
212 276 295   0.35 0.79 1.84 Yield <threads present>
254 351 283   0.42 1.00 1.77 Yield <first entry to new thread>
联系我们 | 关于我们 | 免责声明 | 诚征英才 | 友情链接
Copyright 2019 All rights reserved  本网页版权属Open ADSP所有
北京海淀区中关村大街32号新中发市场3659 邮编100100
电话 18611096839 
粤ICP备14035876号-1