EP1250645A1 - Systeme de gestion de peripheriques dans un circuit integre - Google Patents
Systeme de gestion de peripheriques dans un circuit integreInfo
- Publication number
- EP1250645A1 EP1250645A1 EP01903978A EP01903978A EP1250645A1 EP 1250645 A1 EP1250645 A1 EP 1250645A1 EP 01903978 A EP01903978 A EP 01903978A EP 01903978 A EP01903978 A EP 01903978A EP 1250645 A1 EP1250645 A1 EP 1250645A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- software layer
- hardware
- management system
- layer
- integrated circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
Definitions
- the present invention relates to a device management system in an integrated circuit with microprocessor. It relates more particularly to applications of the smart card type.
- An integrated circuit for a smart card type application commonly called microcircuit, or even electronic micromodule, comprises, in addition to a microprocessor, a certain number of other hardware resources, generally called peripherals, such as counters, circuits serial interface, random number generators, clock signals, etc.
- peripherals such as counters, circuits serial interface, random number generators, clock signals, etc.
- memories including a program memory ROM, reprogrammable memories to contain application data (EEPROM) or another working memory (RAM), and a peripheral access controller, which manages in particular the address and data buses.
- Such an integrated circuit is usually delivered to a client, who is not necessarily the end user of the circuit, for which at least one application has been implemented in this integrated circuit according to its final destination.
- the current trend is towards the implementation of several applications, one of which is activated by an external application, at a given time.
- These applications can be of different types. They may for example consist of a smart card operating system (opera ting system), a cryptographic library, which may allow calculations or verification of signature, encryption, or even on-board test software, this list of applications is not exhaustive. These applications are implemented in the integrated circuit in the form of software processes in an application software layer. These processes are executed by the microprocessor of the integrated circuit.
- a smart card operating system operating system
- a cryptographic library which may allow calculations or verification of signature, encryption, or even on-board test software
- the application software layer must call processes on peripherals, called hardware processes in the following (as opposed to software processes).
- An object of the invention is to secure the device management system in an integrated circuit of smart card.
- this intermediate software layer manages all the peripherals on behalf of the application software layer.
- this call is managed by the intermediate software layer.
- a software interrupt instruction is used, by which a function of the intermediate software layer is called.
- the intermediate software layer When the intermediate software layer has completed the processing linked to the called function, it returns to the application software layer, by an interrupt return instruction.
- the application software layer no longer has to know the hardware specificities of the product, such as the address of the table of vectors of hardware interrupts, the address of the peripherals. We thus create a barrier of security between the hardware resources of the integrated circuit and the application.
- execution time of a particular hardware process on a peripheral can be quite long (for example, the programming of one or more words in EEPROM memory).
- the intermediate software layer to immediately release the application software layer which has called a hardware process.
- the intermediate software layer itself manages the devices in interrupt mode. This allows the application software layer to continue working and the intermediate software layer to process other hardware process calls, if necessary.
- a device when a device has finished executing a hardware process, it emits a hardware interrupt, which stops the current execution in the microprocessor and returns it to the management of hardware interrupts in the intermediate software layer.
- the intermediate software layer ensuring its security barrier function by performing the processing of the interruption corresponding to the hardware aspect proper, in particular the reading and writing registers to identify the source of the hardware interrupt, while the application software layer performs the rest of the processing of the interrupt, related to the application.
- the invention relates to a device management system in a microprocessor integrated circuit, comprising an application software layer comprising at least one process requiring the execution of hardware processes on at least one peripheral of the integrated circuit, characterized in that that it comprises an intermediate software layer for managing the hardware processes called by a process of the application software layer.
- FIG. 1 schematically represents the device management system according to the invention. invention
- FIG. 2 illustrates an example of processing of a function call of the application software layer by the intermediate software layer
- FIG. 3 illustrates an example of implementation of the invention using macro-instructions for ensure calls between the application software layer and the intermediate software layer.
- the device management system generally applies to an integrated circuit CI comprising a microprocessor ⁇ p and peripherals P. It applies more particularly to integrated circuits for applications of the smart card type.
- the peripherals of such integrated circuits usually include at least one program memory ROM containing the software processes of the application layer APPLI and the program corresponding to the intermediate software layer LI according to the invention.
- the processes or programs of the application layers APPLI and intermediate LI are executed by the microprocessor. This is why we have chosen to represent them in FIG. 1, inside a logic box representing the microprocessor ⁇ p.
- the microprocessor executes a given process or program from the application layer APPLI. In practice, it can be interrupted in this execution by a hardware or software interruption.
- the microprocessor when the processing of the APPLI application layer carried out by the ⁇ p microprocessor requires the execution of a hardware process in a peripheral, it uses the DIL software interrupt to call a corresponding function of the LI layer.
- This DIL software interrupt start instruction is executed by the microprocessor ⁇ p.
- the processing of this software interruption includes the launch of the corresponding PMI hardware process on the device concerned PI.
- the result of this hardware process R (PM1) which can simply be a flag to signify that the process is carried out, is returned to the application layer with the software interrupt return instruction, RIL. More precisely, and as shown in FIG. 2, the microprocessor executes (1) a PLI process of the application software layer. In this Fold process, it needs to run a PMI hardware process.
- the PI device concerned emits (6) a hardware interrupt IT, which stops (7) the processing in progress in the microprocessor ⁇ p, in the example a processing of the application software layer ( it could be a processing of another function LI), to send it back to the management of the interrupt (8), by the intermediate software layer LI.
- This management includes reading and writing the table of hardware interrupt vectors, making it possible to identify the source of the hardware interrupt, PI in the example, then the return (9) of this interruption to the application software layer APPLI, to allow the treatment (10) of the interruption by the calling software process.
- This reference is made by a DIL software interrupt sent this time by the intermediate software layer LI.
- the concerned process PLI of the application software layer has completed its processing of the interrupt, it releases (11) the intermediate software layer LI, which in turn releases (12) the peripheral PI.
- the microprocessor can then resume (13) the processing in progress, where it had been stopped.
- step (4) of the figure 2 in which the intermediate software layer LI releases the application software layer includes the return of corresponding information, signifying that the device is unavailable.
- the possibilities offered by the software interrupt mode of the microprocessor ⁇ p are used to create a security barrier between the application software layer and the peripherals.
- the application software layer no longer needs to know the addresses of the peripherals, of the table of hardware interrupt vectors and of other information which is information which is particularly important from the security point of view. It must only implement the software interrupt mode, by which mode it transmits its function calls on the intermediate software layer that manages devices in its place.
- the program compilers in source code generally do not integrate the instruction assembler of departure in software interruption DIL and 1 instruction assembler of return associated RIL interrupt.
- the intermediate software layer LI contains macro-instructions for each function call.
- the application software layer must therefore only call a macro instruction of the intermediate software layer LI.
- This macro-instruction includes the transfer of the parameters linked to the LI function to be executed and the execution of the DIL assembler instruction.
- it is the intermediate software layer LI which emits the software interruption DIL.
- the processing of this DIL interrupt by the intermediate software layer LI in turn refers to a function LI.
- the application software layer and the functions of the intermediate software layer LI are they developed in advanced language, typically in C language.
- a corresponding block diagram is shown in FIG. 3. The invention which has just been described makes it possible to create a security barrier between the application layer and the peripherals of the integrated circuit.
- the communication between these two layers is optimized, by allowing the application concerned to carry out the processing of the hardware interrupt itself. linked to the application, while allowing the intermediate software layer LI to act as a barrier, leaving it with all the aspects of the processing linked to the hardware, in particular, identifying the source of the interruption.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microcomputers (AREA)
- Storage Device Security (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
Description
Claims
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0001062 | 2000-01-27 | ||
| FR0001062A FR2804525A1 (fr) | 2000-01-27 | 2000-01-27 | Systeme de gestion de peripheriques dans un circuit integre |
| PCT/FR2001/000258 WO2001055849A1 (fr) | 2000-01-27 | 2001-01-26 | Systeme de gestion de peripheriques dans un circuit integre |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP1250645A1 true EP1250645A1 (fr) | 2002-10-23 |
| EP1250645B1 EP1250645B1 (fr) | 2003-09-17 |
Family
ID=8846382
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP01903978A Expired - Lifetime EP1250645B1 (fr) | 2000-01-27 | 2001-01-26 | Systeme de gestion de peripheriques dans un circuit integre |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US7398340B2 (fr) |
| EP (1) | EP1250645B1 (fr) |
| JP (1) | JP2003521064A (fr) |
| DE (1) | DE60100792T2 (fr) |
| FR (1) | FR2804525A1 (fr) |
| WO (1) | WO2001055849A1 (fr) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1768028A1 (fr) * | 2005-09-22 | 2007-03-28 | STMicroelectronics (Research & Development) Limited | Périphériques d'adressage dans un circuit intégré |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA2212574C (fr) * | 1995-02-13 | 2010-02-02 | Electronic Publishing Resources, Inc. | Systemes et procedes de gestion securisee de transactions et de protection electronique des droits |
| US6179489B1 (en) * | 1997-04-04 | 2001-01-30 | Texas Instruments Incorporated | Devices, methods, systems and software products for coordination of computer main microprocessor and second microprocessor coupled thereto |
| US5754762A (en) * | 1997-01-13 | 1998-05-19 | Kuo; Chih-Cheng | Secure multiple application IC card using interrupt instruction issued by operating system or application program to control operation flag that determines the operational mode of bi-modal CPU |
| US6105119A (en) * | 1997-04-04 | 2000-08-15 | Texas Instruments Incorporated | Data transfer circuitry, DSP wrapper circuitry and improved processor devices, methods and systems |
| US6298370B1 (en) * | 1997-04-04 | 2001-10-02 | Texas Instruments Incorporated | Computer operating process allocating tasks between first and second processors at run time based upon current processor load |
-
2000
- 2000-01-27 FR FR0001062A patent/FR2804525A1/fr active Pending
-
2001
- 2001-01-26 DE DE60100792T patent/DE60100792T2/de not_active Expired - Lifetime
- 2001-01-26 WO PCT/FR2001/000258 patent/WO2001055849A1/fr not_active Ceased
- 2001-01-26 JP JP2001555328A patent/JP2003521064A/ja not_active Withdrawn
- 2001-01-26 US US10/182,010 patent/US7398340B2/en not_active Expired - Lifetime
- 2001-01-26 EP EP01903978A patent/EP1250645B1/fr not_active Expired - Lifetime
Non-Patent Citations (1)
| Title |
|---|
| See references of WO0155849A1 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20050021991A1 (en) | 2005-01-27 |
| DE60100792T2 (de) | 2004-07-15 |
| US7398340B2 (en) | 2008-07-08 |
| FR2804525A1 (fr) | 2001-08-03 |
| JP2003521064A (ja) | 2003-07-08 |
| WO2001055849A1 (fr) | 2001-08-02 |
| EP1250645B1 (fr) | 2003-09-17 |
| DE60100792D1 (de) | 2003-10-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| AU2020202180B2 (en) | Memory allocation techniques at partially-offloaded virtualization managers | |
| EP0733245B1 (fr) | Carte a memoire et procede de fonctionnement | |
| US10318737B2 (en) | Secure booting of virtualization managers | |
| AU2017290267B2 (en) | Performance variability reduction using an opportunistic hypervisor | |
| US6220510B1 (en) | Multi-application IC card with delegation feature | |
| EP2466470B1 (fr) | Module matériel de sécurité et procédé de traitement dans un tel module | |
| EP2480969A1 (fr) | Systeme et procede de gestion de l'execution entrelacee de fils d'instructions | |
| FR3103585A1 (fr) | Procédé de gestion de la configuration d’accès à des périphériques et à leurs ressources associées d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant | |
| FR2808359A1 (fr) | Carte a puce multi-applicatives | |
| EP4187393A1 (fr) | Gestion dynamique d'un pare-feu de mémoire | |
| FR3103584A1 (fr) | Procédé de gestion du débogage d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant | |
| EP1158405A1 (fr) | Système et méthode de gestion d'une architecture multi-ressources | |
| EP2124153A1 (fr) | Procédés et dispositif de mise en oeuvre de périphériques multifonction avec un gestionnaire de périphérique standard unique | |
| EP1250645B1 (fr) | Systeme de gestion de peripheriques dans un circuit integre | |
| FR3057081B1 (fr) | Processeur comprenant une pluralite de coeurs de calcul | |
| CN110852139A (zh) | 生物特征识别方法、装置、设备以及存储介质 | |
| FR2674647A1 (fr) | Appareil formant chequier electronique pour transactions financieres et procede d'utilisation d'un tel appareil. | |
| WO2000051087A1 (fr) | Dispositif d'acces securise a des applications d'une carte a puce | |
| WO2002008897A1 (fr) | Protocole d'echange de messages entre applications implantees sur un systeme embarque, et systeme embarque correspondant | |
| US20240036868A1 (en) | Schedulable Asynchronous Methods with Semi-Reactive Completion Stages | |
| EP3244340A1 (fr) | Procede pour executer une application de façon securisee | |
| FR2829847A1 (fr) | Procede de controle d'acces a des ressources partagees dans un systeme embarque et systeme embarque pour la mise en oeuvre d'un tel procede | |
| EP1235140A1 (fr) | Procédé de gestion d'instructions de branchement au sein d'un processeur | |
| FR2721468A1 (fr) | Procédé de partage de ressources physiques et dispositif d'interface pour la mise en Óoeuvre du procédé. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| 17P | Request for examination filed |
Effective date: 20020718 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR |
|
| RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: ALBARET, THIERRY Inventor name: CHABAUD, MYRIAM |
|
| GRAH | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOS IGRA |
|
| GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): DE FR GB IT |
|
| REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D Free format text: NOT ENGLISH |
|
| GBT | Gb: translation of ep patent filed (gb section 77(6)(a)/1977) | ||
| REF | Corresponds to: |
Ref document number: 60100792 Country of ref document: DE Date of ref document: 20031023 Kind code of ref document: P |
|
| REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Free format text: FRENCH |
|
| REG | Reference to a national code |
Ref country code: IE Ref legal event code: FD4D |
|
| PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
| 26N | No opposition filed |
Effective date: 20040618 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20101230 Year of fee payment: 11 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20110216 Year of fee payment: 11 Ref country code: IT Payment date: 20101228 Year of fee payment: 11 Ref country code: DE Payment date: 20110103 Year of fee payment: 11 |
|
| GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20120126 |
|
| REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20120928 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20120126 Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20120801 |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R119 Ref document number: 60100792 Country of ref document: DE Effective date: 20120801 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20120126 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20120131 |