| 数据搜索系统,热门电子元器件搜索 |
|
ST20-SWCPC 数据表(PDF) 7 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
ST20-SWCPC 数据表(HTML) 7 Page - STMicroelectronics |
|
7 / 21 page ![]() ST20–SWC 7/21 2.3.2 Access to the instruction set ANSI C is a good language for writing embedded applications, since it combines the constructs of a high level programming language with low level access to the hardware through assembler inserts. To make the access to some of the ST20 instructions even more effective, a number of special library functions have been defined which the optimizing compiler can render as in-line code. This removes the overhead of a library call, but it also gives the optimizer more information on what the program is doing. Normally, when the optimizer sees a function containing some assembler code, it must make very conservative assumptions about the effect the code has on its surroundings, e.g. on static variables and parameters. By using the functions defined to access the instructions, the optimizer knows exactly what the effects will be and can make the correct assumptions for the side-effects of the code. The ST20 instructions that can be accessed in this way include block moves, channel input and output, bit manipulation, CRC computations, semaphores and some scheduling operations. 2.3.3 Run-time overhead reduction In order to support the full ANSI C language, a significant run-time library is necessary. The toolset is supplied with another library, known as the reduced library, which does not support file system and environment requests, which depend on a host. If some of the other features in ANSI C are not used, then it may be possible to reduce the overhead further by modifying the run-time initialization, the source of which is provided. 2.3.4 Assembler inserts Within the SGS-THOMSON implementation of the ANSI C language, assembler code can be written at any point to achieve direct access to ST20 instructions for reasons of speed and code size. Full access is available to the ST20 instruction set and C program variables. 2.3.5 Assembler If there is no other way to obtain the code required, for example when writing customized bootstrap mechanisms, then the toolset contains an assembler as the final phase of the compiler. This can be invoked to assemble user-written code. 2.3.6 Dynamic loading of processes The toolset can encapsulate the code and data of a process in a file called a relocatable separately- compiled unit or rsc. This form is suitable for it to be loaded by another application and called. A set of functions is provided for this to be achieved. The rsc can be found either in a file, or already in memory, or is input along a channel. The memory variant allows an rsc to be placed into ROM and executed if required. For example, if an application wishes to select a device driver to be placed in on-chip memory, then a number of possible drivers can be placed in ROM and the application can choose one for the occasion, copy it into low memory and execute it. 2.3.7 Bootstraps The source code of the standard bootstraps are provided. The user can then write bootstraps that are tailored to a specific application by using the standard ones as templates. 2.3.8 Memory configuration An interactive memory configurer tool is supplied for describing a ST20450 memory configuration. The memory interface of the ST20450 is configurable and must be initialized before the memory can be accessed. This data is used by the Toolset tools to generate the code to initialize the memory |
|
|
链接网址 |
| ALLDATASHEET是否为您带来帮助? [ DONATE ] |
关于 Alldatasheet | 广告服务 | 联系我们 | 隐私政策 | 数据表链接 | 链接交换 | 制造商名单 All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |