FR2870368A1 - Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre - Google Patents

Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre Download PDF

Info

Publication number
FR2870368A1
FR2870368A1 FR0400740A FR0400740A FR2870368A1 FR 2870368 A1 FR2870368 A1 FR 2870368A1 FR 0400740 A FR0400740 A FR 0400740A FR 0400740 A FR0400740 A FR 0400740A FR 2870368 A1 FR2870368 A1 FR 2870368A1
Authority
FR
France
Prior art keywords
circuit
clock
count
address
signal
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
Application number
FR0400740A
Other languages
English (en)
Other versions
FR2870368B1 (fr
Inventor
Alain Vergnes
Oliver Lardy
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Atmel Corp
Original Assignee
Atmel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Atmel Corp filed Critical Atmel Corp
Priority to FR0400740A priority Critical patent/FR2870368B1/fr
Priority to US11/036,471 priority patent/US7162003B2/en
Priority to EP05706040A priority patent/EP1709737A1/fr
Priority to PCT/US2005/002122 priority patent/WO2005074135A1/fr
Priority to CNB2005800017389A priority patent/CN100547924C/zh
Priority to TW094102467A priority patent/TW200604823A/zh
Publication of FR2870368A1 publication Critical patent/FR2870368A1/fr
Application granted granted Critical
Publication of FR2870368B1 publication Critical patent/FR2870368B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • G06F13/423Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Information Transfer Systems (AREA)

Abstract

L'invention est un système de sélection d'un périphérique (308), le périphérique (308) recevant un première fréquence d'horloge (405-1). L'invention comprend ce qui suit. Un circuit de traitement (302) reçoit une seconde fréquence d'horloge (405-2), les première (405-1) et seconde (405-2) fréquences étant différentes. Le circuit de traitement (302) est configuré pour transmettre un signal de sélection (415, 430). Un circuit en pont (316) est couplé au circuit de traitement (302) et au périphérique (308), et est configuré pour recevoir le signal de sélection (415, 430) et transmettre un signal de sélection (415, 430) au périphérique (308). Le circuit en pont (316) est en outre configuré pour recevoir la seconde fréquence d'horloge (405-2) mais pas la première fréquence d'horloge (405-1). Un compteur (540) est couplé au circuit en pont (316) et est configuré pour traiter un compte, le compte étant un nombre prédéterminé et basé sur la valeur de la première fréquence (405-1).

Description

ATMEL4. FR1. doc
Procédé et dispositif pour piloter de multiples périphériques avec des fréquences d'horloge différentes dans un circuit intégré Arrière-plan (1) Domaine de l'invention L'invention concerne les fréquences d'horloge dans des dispositifs périphériques et plus particulièrement le fonctionnement d'un dispositif périphérique (esclave) à une fréquence d'horloge différente de celle d'un microprocesseur (maître), sans utiliser de resynchronisation d'horloge.
(2) Art antérieur Un microcontrôleur inclut généralement un microprocesseur, de la mémoire, un module périphérique qui assure la commu- nication, par exemple un récepteur/émetteur asynchrone universel (UART), une interface série pour périphérique (SPI), et un bus série universel (USB), ainsi qu'un contrô- leur d'interruption. Les périphériques sont généralement configurés pour échanger des données avec les microproces- Beurs par l'intermédiaire de bus internes. Typiquement, un bus transfère des signaux de données, d'adresse et de commande. Un procédé de gestion des bus de données pour de multiples périphériques utilise le multiplexage des signaux.
La figure 1 est un schéma illustrant un microcontrôleur simplifié de l'art antérieur muni d'un bus système. Le microcontrôleur 100 inclut un microprocesseur 102 couplé à des périphériques 104 et 106. Le bus d'adresse, le bus d'écriture de données et le signal de lecture/écriture sont combinés par souci de simplicité dans un bus système 108.
Le bus système 108 inclut un multiplexeur 110 qui choisit entre les données provenant des périphériques 104 et 106.
La figure 2 est un schéma illustrant un microcontrôleur simplifié de l'art antérieur muni de lignes de bus indivi- duelles. Le microcontrôleur 200 inclut un microprocesseur 202 relié à une mémoire 204. Un décodeur d'adresse 206 reçoit et décode des adresses provenant du microprocesseur 202 pour la mémoire 204 et des périphériques 208-1 et 208-2. Une interface de bus externe 209 est reliée au microprocesseur 202 par l'intermédiaire d'un bus d'adresse système 210, un bus de lecture/écriture système 212 et de données système 214. L'interface de bus externe 209 permet au microcontrôleur 200 de s'interconnecter avec des composants externes (non représentés).
Le décodeur d'adresse 206 reçoit et décode une adresse provenant du bus d'adresse système 210, et délivre un signal de sélection sur une ligne de sélection de pont 215 à un circuit en pont 216, qui choisit ensuite entre les périphériques 208- 1 et 208-2. La logique de sélection en pont 216 coordonne les signaux de bus provenant du bus d'adresse système 210, du bus de lecture/écriture système 212 et du bus de données système 214 avec les périphériques 208. Le circuit en pont 216 traduit également le protocole du bus système en un protocole destiné au bus de périphéri- que. Le circuit en pont 216 s'interconnecte avec le péri- phérique 208-1 par l'intermédiaire d'un bus périphérique 218-1 et avec le périphérique 208-2 par l'intermédiaire d'un bus périphérique 218-2. La communication entre le microprocesseur 202, le circuit en pont 216 et le périphérique 208-1 est coordonnée par un signal d'horloge provenant d'une source d'horloge 220 (également reçu par la mémoire 204, le décodeur d'adresse 206 et l'interface de bus externe 209).
Le périphérique 208-2 reçoit un signal d'horloge d'une source d'horloge 222 qui diffère de la source d'horloge 220. Le circuit en pont 216 reçoit la source d'horloge 222 et resynchronise les signaux entre le microprocesseur 202, qui fonctionne au cadencement de la source d'horloge 220, et le périphérique 208-2. Afin de resynchroniser, le microcontrôleur 200 duplique certaines parties du bus (particulièrement le bus d'adresse), lequel en retour requiert plus de puissance.
Un procédé et un système pour resynchroniser les signaux entre périphériques à des fréquences d'horloge différentes qui utilisent moins de composants et réduisent la consomma- tion d'énergie sont nécessaires.
Résumé de l'invention L'invention consiste à déterminer une valeur de comptage d'un circuit où le compte (trois, quatre, cinq, etc.) représente le rapport de la fréquence d'horloge système à la fréquence d'horloge de périphérique (2-1, 3-1, 4-1, etc.). Le compte permet au système de faire fonctionner un périphérique à une fréquence d'horloge différente de la fréquence d'horloge système sans resynchroniser la fréquence d'horloge du périphérique.
L'invention est un système pour sélectionner un périphéri- que, le périphérique recevant une première fréquence d'hor- loge. L'invention se compose de ce qui suit. Un circuit de traitement reçoit une seconde fréquence d'horloge, les première et seconde fréquences d'horloge étant différentes.
Le circuit de traitement est configuré pour transmettre un signal de sélection. Un circuit en pont est couplé au circuit de traitement et au périphérique, et est configuré pour recevoir le signal de sélection et transmettre un signal de sélection de périphérique au périphérique. Le circuit en pont est en outre configuré pour recevoir la seconde fréquence d'horloge mais pas la première fréquence d'horloge. Un compteur est couplé au circuit en pont et est configuré pour traiter un compte, le compte étant un nombre prédéterminé et basé sur la valeur de la première fréquence.
Brève description des figures
La figure 1 est un schéma illustrant un microcontrôleur simplifié de l'art antérieur muni d'un bus système.
La figure 2 est un schéma illustrant un microcontrôleur simplifié de l'art antérieur muni de lignes de bus individuelles.
La figure 3 est un schéma illustrant un mode de réalisation de l'invention dans un microcontrôleur.
La figure 4 est un chronogramme illustrant le fonctionne-ment de l'invention à deux fréquences d'horloge différen-25 tes.
La figure 5 est un schéma illustrant un mode de réalisation du circuit en pont de la figure 3.
La figure 6 est un schéma illustrant un mode de réalisation du circuit en pont de la figure 3.
La figure 7 est un ordinogramme illustrant un procédé pour piloter de multiples périphériques avec des fréquences 35 d'horloge différentes.
Description détaillée de l'invention
La figure 3 est un schéma illustrant un mode de réalisation de l'invention dans un microcontrôleur. Le microcontrôleur 300 inclut un circuit de traitement, ou microprocesseur 302, connecté à de la mémoire 304. Un décodeur d'adresse 306 reçoit et décode les adresses provenant du microprocesseur 302 pour la mémoire 304 et des périphériques 308-1 et 308-2. Une interface de bus externe 309 est reliée au microprocesseur 302 par l'intermédiaire d'un bus d'adresse système 310, un bus de lecture/écriture système 312 et de données système 314. L'interface de bus externe 309 permet au microcontrôleur 300 de s'interconnecter avec des composants externes (non représentés).
Le décodeur d'adresse 306 reçoit et décode une adresse provenant du bus d'adresse système 310, et délivre un signal de sélection sur une ligne de sélection de pont 315 au circuit en pont 316, qui choisit ensuite entre les périphériques 308-1 et 308-2. Le circuit en pont 316 s'interconnecte avec les périphériques 308 par l'intermédiaire du bus de lecture/écriture de périphérique 318, le bus d'adresse de périphérique 320 et le bus de données de périphérique 322. Le circuit en pont 316, le microprocesseur 302 et le périphérique 308-1 reçoivent un signal d'horloge de la source d'horloge 324. Un signal d'horloge vers la mémoire 304, le décodeur d'adresse 306 et le bus externe 309 n'est pas illustré par souci de simplicité.
Le périphérique 308-2 reçoit un signal d'horloge de la source d'horloge 326, qui diffère de la source d'horloge 324. Le circuit en pont 316 n'a pas besoin de recevoir de source d'horloge 326 pour resynchroniser les signaux entre le microprocesseur 302, qui fonctionne au cadencement de la source d'horloge 324, et le périphérique 308-2. Dans un mode de réalisation, le rapport de fréquence d'horloge provenant de la source d'horloge 324 à la source d'horloge 326 est connu et stocké ou disponible dans le circuit en pont 316.
La figure 4 est un chronogramme illustrant le fonctionne-ment de l'invention à deux fréquences d'horloge différentes. Une horloge 400, d'après par exemple l'horloge 324 de la figure 3, a une vitesse double d'une horloge 405, d'après par exemple l'horloge 326 de la figure 3. Bien qu'un rapport 2-1 soit utilisé dans cet exemple, le rapport dépend uniquement des vitesses d'horloge auxquelles fonctionnent le système et les périphériques.
Le microprocesseur 302 de la figure 3 envoie une adresse correspondant au périphérique 308-1 le long du bus d'adresse système 310. Dès que le circuit en pont 316 reçoit une adresse, par exemple l'adresse 410 (correspondant au périphérique 308-1), le circuit en pont 316 trans- met un signal de sélection de périphérique 415 au périphérique 308-1. Par exemple, dans l'architecture de bus de microcontrôleur avancée (AMBA) proposée par ARM, le signal de sélection est affirmé pendant deux cycles d'horloge tandis que le temps d'initialisation du périphérique est d'un seul cycle d'horloge. L'architecture AMBA est utilisée à titre d'exemple uniquement pour illustrer le fonctionne-ment de l'invention, et non en tant que caractéristique limitative. Du fait que le périphérique 308-1 et le micro-processeur 302 partagent la même fréquence d'horloge prove- nant de la source d'horloge 324, un cycle d'horloge de l'horloge 400 s'écoule avant que des données lues 420 soient disponibles dans le périphérique 308-1.
Ensuite, le microprocesseur 302 envoie une adresse corres- pondant au périphérique 308-2 le long du bus d'adresse système 310. Dès que le circuit en pont 316 reçoit l'adresse, par exemple l'adresse 425 (correspondant au périphérique 308-2), le circuit en pont 316 transmet un signal de sélection de périphérique 430 au périphérique 308-2. Du fait que le rapport de l'horloge 400 à l'horloge 405 est 2-1, le signal de sélection de périphérique 430 dure quatre cycles de l'horloge 400 et deux cycles de l'horloge 405.
L'instant auquel des données lues 435 deviennent disponibles depuis le périphérique 308-2 dépend de la manière dont les bords ascendants et descendants de l'horloge 405 se rapprochent des bords ascendants et descendants de l'hor- loge 400. Par exemple, avec l'horloge 405-1, les données lues 435-1 deviennent disponibles un cycle et demi d'horloge après l'affirmation du signal de sélection de périphérique 430. En variante, les données lues pourraient devenir disponibles un demi-cycle d'horloge après l'affirmation du signal de sélection de périphérique 430.
Concernant l'horloge 405-2, les données lues 435-2 deviennent disponibles un cycle d'horloge après l'affirmation du signal de sélection de périphérique 430, sur le bord ascen- dant de l'horloge 405-2.
La durée de la sélection de périphérique dépend du périphérique sélectionné. Le circuit en pont détermine le nombre de cycles d'horloge sur la base d'un rapport connu et compte sur la base de son horloge d'entrée. Le rapport, ou nombre de cycles d'horloge qui doivent s'écouler, peut être câblé dans le circuit en pont ou fourni par l'intermédiaire d'une source externe.
La figure 5 est un schéma illustrant un mode de réalisation du circuit en pont 316 de la figure 3. La figure 5 simpli- fie le montage du circuit en pont en illustrant uniquement les composants concernés par l'invention. Le circuit en pont 500 inclut un décodeur d'adresse 510 qui reçoit une adresse du bus d'adresse système 310 et un signal de sélec- tion de pont de la ligne de sélection de pont 315. Le décodeur d'adresse 510 décode l'adresse et la sélection de pont, et envoie un signal de sélection à une machine d'états 520. La machine d'états 520 reçoit, par exemple, un signal indiquant que le périphérique 308-1 devrait être affirmé. La machine d'états 520 affirme un signal d'initialisation sur une bascule bistable de type D (DFF) 530 qui affirme le signal de sélection de périphérique pour le périphérique 308-1. La machine d'états 520 envoie égale- ment un signal de validation à un compteur 540. Dans cet exemple, le compteur 540 est un compteur d'incrémentation, bien qu'un compteur de décrémentation puisse lui être substitué avec d'autres changements appropriés. Le premier cycle d'horloge après la validation du compteur, le compteur lit zéro. En ce point, le périphérique 308-1 a rendu les données lues 420 (voir figure 4) disponibles. Un comparateur 550 compare la valeur provenant du compteur 540 (un zéro à cet instant) à un compte provenant d'un multiplexeur 560, qui fournit une valeur par défaut de un. Puisque les nombres diffèrent, le comparateur 550 n'effectue aucune action. Après le cycle d'horloge suivant, les données lues 420 ont été disponibles pendant un cycle d'horloge et le compteur incrémente sa valeur à un. Le comparateur 550 identifie que la valeur provenant du compteur 540 (un) est égale au compte du multiplexeur 560 (un), donc le comparateur 550 envoie un signal de réinitialisation au compteur 540 et informe la machine d'états 520. Le signal de remise à zéro envoyé au compteur 540 arrête le compte et réinitia- lise la valeur à zéro. La machine d'états 520 réinitialise la bascule DFF 530, qui infirme le périphérique 308-1, et envoie un signal 'prêt' au microprocesseur 302 indiquant que le circuit en pont 500 est prêt à continuer.
Dans l'exemple suivant, la machine d'états 520 reçoit un signal indiquant que le périphérique 308-2 devrait être affirmé. La machine d'états 520 affirme un signal d'initialisation sur la bascule de type D (DFF) 570, qui affirme le signal de sélection de périphérique pour le périphérique 308-2. La machine d'états 520 envoie également un signal de validation au compteur 540. La bascule DFF 570 affirme également un signal de sélection au multiplexeur 560. Le multiplexeur 560 transmet une valeur de 3 au compa- rateur 550. L'homme du métier reconnaît que le compte transmis par le multiplexeur 560 dépend de l'architecture utilisée et du rapport entre les fréquences d'horloge. Dans cet exemple, le multiplexeur 560 fournit un compte égal à un et trois, compatible avec l'architecture AMBA et un rapport 2-1. Le compte variera selon les différents rap- ports et les différentes architectures. Dans cet exemple, aussi longtemps que la bascule DFF 570 est affirmée, le multiplexeur 560 délivrera un compte de trois.
Quatre cycles d'horloge après que la machine d'états 520 initialisé la bascule DFF 570, le compteur 540 s'incrémente à une valeur de trois et le comparateur 550 réinitialise le compteur 540 et informe la machine d'états 520 de la fin. La machine d'états 520 réinitialise ensuite la bascule DFF 570, qui à son tour infirme le multiplexeur 560. La machine d'états 520 transmet également un signal 'prêt' au micro-processeur 302. La sélection de périphérique 430 a été affirmée pendant quatre cycles d'horloge sur la base de l'horloge 400 ou deux cycles d'horloge sur la base de l'horloge 405.
La figure 6 est un schéma illustrant un mode de réalisation du circuit en pont 316 de la figure 3. Le circuit en pont 600 inclut les composants du circuit en pont 500 et les composants fonctionnent de la même manière. De plus, le décodeur d'adresse 510 reçoit un signal du bus de lecture/écriture système et transmet un signal de sélection à un registre de configuration 610. Plutôt que le multiplexeur 560 ne reçoive un compte fixe lorsqu'il est affirmé par la bascule DFF 570, le multiplexeur 560 reçoit un compte du circuit de configuration 610.
Le décodeur d'adresse 510 envoie un signal de sélection au multiplexeur 620 qui ensuite sélectionne le rapport pour le compte du bus de données système 630. Le multiplexeur 620 transmet le rapport à la bascule DFF, qui à son tour transmet le rapport aux multiplexeurs 560 et 620. Une fois que le décodeur d'adresses 510 désélectionne le multiplexeur 620, le multiplexeur 620 sélectionne le compte depuis la bascule DFF 640, et le compte fait une boucle entre le multiplexeur 620 et la bascule DFF 640. Le registre de configuration 610 fournit un compte configurable pour les périphériques avec des fréquences d'horloge différentes ou variables.
La figure 7 est un ordinogramme illustrant un procédé pour piloter de multiples périphériques avec des fréquences d'horloge différentes. Dans le bloc 700, recevoir un pre- mier cycle d'horloge dans un circuit de traitement. Dans le bloc 705, transmettre un signal de sélection à partir du circuit de traitement. Dans le bloc 708, transmettre un signal d'adresse à partir du circuit de traitement. Dans le bloc 710, recevoir les signaux de sélection et d'adresse au circuit en pont, le circuit en pont étant couplé au circuit de traitement, à un premier périphérique et à un second périphérique. Dans le bloc 715, déterminer si le signal d'adresse est associé au premier ou au second périphérique. Dans le bloc 720, transmettre un signal de sélection de premier périphérique au premier périphérique. Dans le bloc 725, traiter un premier compte dans un compteur, le compteur étant couplé au circuit en pont, le premier compte étant associé au premier périphérique. Dans le bloc 730, suivre le passage des cycles d'horloge sur la base de la première fréquence d'horloge. Dans le bloc 735, comparer le premier compte au passage des cycles d'horloge sur la base de la première fréquence d'horloge. Dans le bloc 740, affirmer le premier périphérique pendant une période de temps basée sur le premier compte et la première fréquence d'horloge. Dans le bloc 745, transmettre un signal de sélection de second périphérique au second périphérique. Dans le bloc 750, traiter un second compte dans le compteur, le second compte étant associé au second périphérique, où le second compte diffère du premier compte et est prédéterminé. Dans le bloc 755, comparer le second compte au passage des cycles d'horloge sur la base de la première fréquence d'horloge. Dans le bloc 760, affirmer le second périphérique pendant une période de temps basée sur le second compte et la première fréquence d'horloge, où un rapport de la période de temps pendant laquelle le premier périphérique est affirmé à la période de temps pendant laquelle le second périphérique est affirmé est égal à un rapport de la première fréquence d'horloge à la seconde fréquence d'horloge.
Les avantages de l'invention incluent un montage réduit et par conséquent des exigences de puissance réduite en per-mettant des différences de fréquence entre des périphéri- ques, ou entre un périphérique et le système, sans resynchronisation.
L'homme du métier reconnaîtra que de multiples maîtres peuvent être utilisés sans s'écarter de l'invention. Tout homme du métier reconnaîtra d'après la précédente description et d'après les figures et les revendications que des modifications et des changements peuvent être réalisés sur l'invention sans s'écarter de la portée de l'invention définie dans les revendications qui suivent.

Claims (17)

REVENDICATIONS
1. Système pour sélectionner un premier périphérique (308-1) et un second périphérique (308-2), le premier périphérique (308-1) recevant une première fréquence d'horloge (405-1) et le second périphérique (308-2) recevant une seconde fréquence d'horloge (405-2), les première et seconde fréquences d'horloge (405-1, 405-2) étant différentes, dans un circuit intégré incluant un circuit de traite- ment (302) configuré pour recevoir la première fréquence d'horloge (405-1) , transmettre un signal de sélection (415, 430) et un signal d'adresse (410,425), comprenant: un circuit en pont (316) couplé au circuit de traitement (302), au premier périphérique (308-1) et au second périphérique (308-2), et configuré pour recevoir le signal de sélection (415, 430) et le signal d'adresse (410, 425) et transmettre un signal de sélection de premier périphérique (415) au premier périphérique (308-1) et un signal de sélection de second périphérique (430) au second périphérique (308-2), et un compteur (540) couplé au circuit en pont (316) et configuré pour traiter un compte, le compte étant un nombre prédéterminé et basé sur le fait que le signal d'adresse (410) indique une première adresse et le signal de sélection (415) indique qu'un accès est requis à la première adresse, qui est associée au premier périphérique (308-1), ou à une seconde adresse (425), qui est associée au second périphérique (308-2), dans lequel le compte diffère pour les première et seconde adresses, dans lequel le circuit en pont (316) affirme le premier périphérique (308-1) et le second périphérique (308-2) pendant une période de temps basée sur la valeur du compte.
2. Système selon la revendication 1, le circuit en pont (316) comprenant en outre: un décodeur d'adresse (306) configuré pour recevoir le signal de sélection (415, 430) et le signal d'adresse (410, 425) et déterminer si le signal d'adresse (410, 425) est associé au premier (308-1) ou second (308-2) périphérique.
3. Système selon la revendication 2, le circuit en pont (316) comprenant en outre: un circuit de sélection de périphérique couplé au décodeur d'adresse (306) et configuré pour générer le signal de sélection de premier périphérique (415) et le signal de sélection de second périphérique (430) sur la base du premier (410) ou second (425) signal d'adresse, dans lequel, si le signal d'adresse indique la première adresse (410) alors le circuit de sélection de périphérique affirme le premier périphérique (308-1) pendant un premier nombre de cycles d'horloge, et si le signal d'adresse indique la seconde adresse (425) alors le circuit de sélec- tion de périphérique affirme le second périphérique (308-2) pendant un second nombre de cycles d'horloge.
4. Circuit selon la revendication 3, dans lequel un rapport de la période de temps pendant laquelle le premier périphérique (308-1) est affirmé à la période de temps pendant laquelle le second périphérique (308-2) est affirmé est égal à un rapport de la première fréquence d'horloge (405-1) à la seconde fréquence d'horloge (405-2).
5. Circuit selon la revendication 4, dans lequel le premier nombre de cycles d'horloge est égal au second nombre de cycles d'horloge.
6. Circuit selon la revendication 3, dans lequel le compte est égal au nombre de cycles d'horloge pendant lesquels le circuit de sélection de périphérique affirme les premier et second périphériques (308-1, 308-2).
7. Circuit selon la revendication 6, dans lequel un rapport du compte d'affirmation du premier périphérique (308-1) au compte d'affirmation du second périphérique (308-2) est égal à un rapport de la première fréquence d'horloge (405-1) à la seconde fréquence d'horloge (405-2).
8. Circuit selon la revendication 3, le compteur (540) comprenant en outre: un circuit de sélection configuré pour recevoir un signal d'affirmation du circuit de sélection de périphérique indiquant si le premier périphérique (308-1) ou le second périphérique (308-2) est affirmé, le circuit de sélection étant configuré en outre pour sélectionner le compte sur la base du signal d'affirmation, un compteur (540) couplé au circuit de sélection et configuré pour suivre le passage d'un nombre de cycles d'horloge sur la base de la première fréquence d'horloge (405-1), et un circuit de comparaison (550) couplé au compteur (540) et configuré pour recevoir le compte et réinitialiser le compteur (540), dans lequel le compteur (540) est confi- guré pour rester validé jusqu'à ce que le compteur (540) ait suivi le passage d'un nombre de cycles d'horloge indiqué par le compte, point auquel le circuit de comparaison (550) est configuré pour transmettre un signal d'infirmation qui fait infirmer le premier (308-1) ou second (308- 2) périphérique au circuit de sélection de périphérique.
9. Circuit selon la revendication 8, dans lequel un rapport du nombre de cycles d'horloge indiqué par le compte pour affirmer le premier périphérique (308-1) au nombre de cycles d'horloge indiqué par le compte pour affirmer le second périphérique (308-2) est égal à un rapport de la première fréquence d'horloge (405-1) à la seconde fréquence d'horloge (405-2).
10. Circuit selon la revendication 8, comprenant en outre: un registre de configuration (610) couplé au compteur (540) et configuré pour recevoir le compte pour la seconde adresse (425), dans lequel le compte pour la première adresse (410) est basé sur le nombre de cycles d'horloge, à la première fréquence d'horloge (405-1), pour transmettre le signal de sélection de premier périphérique (415)
11. Circuit selon la revendication 10, dans lequel le registre de configuration (610) est en outre configuré de telle sorte que le compte pour la seconde adresse (425) soit basé sur le nombre de cycles d'horloge, à la première fréquence d'horloge (405-1), pour transmettre le signal de sélection de second périphérique (430).
12. Circuit selon la revendication 8, le registre de configuration (610) comprenant en outre: un multiplexeur (560) configuré pour recevoir le compte et la seconde adresse (425), et une bascule bistable (530) couplée au multiplexeur (560) et configurée pour tenir le compte, dans lequel le registre de configuration (610) est configuré pour recevoir et transmettre le compte si le signal de sélection (415, 430) correspond à une adresse autre que la première adresse (410).
13. Procédé de sélection, dans un circuit intégré, d'un premier périphérique (308-1) recevant un premier cycle d'horloge et d'un second périphérique (308-2) recevant un second cycle d'horloge, le procédé comprenant les étapes consistant à : recevoir le premier cycle d'horloge dans un circuit de traitement (302), transmettre un signal de sélection (415, 430) depuis le circuit de traitement (302), transmettre un signal d'adresse (410, 425) depuis 5 le circuit de traitement (302), recevoir les signaux de sélection (415, 430) et d'adresse (410, 425) à un circuit en pont (316), le circuit en pont (316) étant couplé au circuit de traitement (302), au premier périphérique (308-1) et au second périphérique (308-2), déterminer si le signal d'adresse (410, 425) est associé au premier (308-1) ou second (308-2) périphérique, transmettre un signal de sélection de premier périphérique (415) au premier périphérique (308-1), traiter un premier compte dans un compteur (540), 20 le compteur (540) étant couplé au circuit en pont (316), le premier compte étant associé au premier périphérique (308-1) transmettre un signal de sélection de second 25 périphérique (430) au second périphérique (308-2), et traiter un second compte dans le compteur (540), le second compte étant associé au second périphérique (308-2), dans lequel le second compte diffère du premier 30 compte et est prédéterminé.
14. Procédé selon la revendication 13, comprenant en outre les étapes consistant à : suivre le passage des cycles d'horloge sur la base de la première fréquence d'horloge (405-1), affirmer le premier périphérique (308-1) pendant une période de temps basée sur le premier compte et la première fréquence d'horloge (405-1), et affirmer le second périphérique (308-2) pendant une période de temps basée sur. le second compte et la première fréquence d'horloge (405-1).
15. Procédé selon la revendication 14, dans lequel un rapport de la période de temps pendant laquelle le premier périphérique (308-1) est affirmé à la période de temps pendant laquelle le second périphérique (308-2) est affirmé est égal à un rapport de la première fréquence d'horloge (405-1) à la seconde fréquence d'horloge (405-2).
16. Procédé selon la revendication 14, comprenant en outre les étapes consistant à : comparer le premier compte au passage des cycles 20 d'horloge sur la base de la première fréquence d'horloge (405-1), et comparer le second compte au passage des cycles d'horloge sur la base de la première fréquence d'horloge (405-1).
17. Système pour sélectionner un périphérique (308), le périphérique (308) recevant une première fréquence d'horloge (405-1), dans un circuit intégré, comprenant: 30 un circuit de traitement (302) configuré pour recevoir une seconde fréquence d'horloge (405-2) et transmettre un signal de sélection (415, 430) et un signal d'adresse (410, 425), les première (405-1) et seconde (405-2) fréquences d'horloge étant différentes, un circuit en pont (316) couplé au circuit de traitement (302) et au périphérique (308), et configuré pour recevoir les signaux de sélection (415, 430) et d'adresse (410, 425) et transmettre un signal de sélection de périphérique (415, 430) au périphérique (308), le circuit en pont (316) étant en outre configuré pour recevoir la seconde fréquence d'horloge (405-2) mais pas la première fréquence d'horloge (405-1), et un compteur (540) couplé au circuit en pont (316) et configuré pour traiter un compte, le compte étant un nombre prédéterminé et basé sur la valeur de la première fréquence (405-1).
FR0400740A 2004-01-27 2004-01-27 Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre Expired - Fee Related FR2870368B1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR0400740A FR2870368B1 (fr) 2004-01-27 2004-01-27 Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre
US11/036,471 US7162003B2 (en) 2004-01-27 2005-01-13 Method and apparatus for driving multiple peripherals with different clock frequencies in an integrated circuit
EP05706040A EP1709737A1 (fr) 2004-01-27 2005-01-20 Methode et appareil de commande de peripheriques multiples a differentes frequences d'horloge dans un circuit integre
PCT/US2005/002122 WO2005074135A1 (fr) 2004-01-27 2005-01-20 Methode et appareil de commande de peripheriques multiples a differentes frequences d'horloge dans un circuit integre
CNB2005800017389A CN100547924C (zh) 2004-01-27 2005-01-20 在集成电路中以不同时钟频率驱动多个***设备的方法和装置
TW094102467A TW200604823A (en) 2004-01-27 2005-01-27 Method and apparatus for driving multiple peripherals with different clock frequencies in an integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0400740A FR2870368B1 (fr) 2004-01-27 2004-01-27 Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre

Publications (2)

Publication Number Publication Date
FR2870368A1 true FR2870368A1 (fr) 2005-11-18
FR2870368B1 FR2870368B1 (fr) 2006-12-15

Family

ID=34778519

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0400740A Expired - Fee Related FR2870368B1 (fr) 2004-01-27 2004-01-27 Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre

Country Status (4)

Country Link
US (1) US7162003B2 (fr)
CN (1) CN100547924C (fr)
FR (1) FR2870368B1 (fr)
TW (1) TW200604823A (fr)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7100061B2 (en) * 2000-01-18 2006-08-29 Transmeta Corporation Adaptive power control
US7539078B2 (en) * 2006-08-22 2009-05-26 Atmel Corporation Circuits to delay a signal from a memory device
US7433262B2 (en) * 2006-08-22 2008-10-07 Atmel Corporation Circuits to delay a signal from DDR-SDRAM memory device including an automatic phase error correction
US9397668B2 (en) * 2014-12-18 2016-07-19 Linear Technology Corporation System and method for providing programmable synchronous output delay in a clock generation or distribution device
US10503686B2 (en) * 2015-12-09 2019-12-10 Microchip Technology Incorporated SPI interface with automatic slave select generation
CN109901664B (zh) * 2019-02-27 2020-03-27 苏州浪潮智能科技有限公司 提供时钟信号的方法、装置、***、设备及可读存储介质
CN112447218A (zh) 2019-08-29 2021-03-05 台湾积体电路制造股份有限公司 存储器电路和方法
DE102019128331A1 (de) 2019-08-29 2021-03-04 Taiwan Semiconductor Manufacturing Co., Ltd. Gemeinsam genutzter decodiererschaltkreis und verfahren
CN114499508A (zh) * 2020-11-13 2022-05-13 瑞昱半导体股份有限公司 操作时钟产生装置与参考时钟栅控电路

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4030451A1 (de) * 1990-09-26 1992-04-09 Siemens Ag Verfahren und vorrichtung zur direkten erzeugung von wartezyklen fuer elektronische einrichtungen, insbesondere fuer mikroprozessoren
EP0840237A1 (fr) * 1996-10-29 1998-05-06 Matsushita Electric Industrial Co., Ltd. Synchronisation de processeur avec bus externe
US20020019898A1 (en) * 2000-07-27 2002-02-14 Hitachi, Ltd. Microprocessor, semiconductor module and data processing system

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4030541C2 (de) 1990-09-27 1997-10-02 Dilthey Ulrich Prof Dr Ing Brenner zur Beschichtung von Grundwerkstoffen mit pulverförmigen Zusatzwerkstoffen
GB2252432B (en) 1991-02-01 1994-09-28 Intel Corp Method and apparatus for operating a computer bus using selectable clock frequencies
US5678065A (en) 1994-09-19 1997-10-14 Advanced Micro Devices, Inc. Computer system employing an enable line for selectively adjusting a peripheral bus clock frequency
US5586308A (en) 1994-10-19 1996-12-17 Advanced Micro Devices, Inc. Clock control unit responsive to a power management state for clocking multiple clocked circuits connected thereto
EP0708406B1 (fr) 1994-10-19 2001-09-12 Advanced Micro Devices, Inc. Systèmes processeurs intégrés pour dispositifs d'information portables
BR9509870A (pt) * 1994-12-08 1997-11-25 Intel Corp Método e aparelho para permitir a um processador acessar um componente externo através de um barramento privado ou um barramento compartílhado
US5838995A (en) 1995-12-18 1998-11-17 International Business Machines Corporation System and method for high frequency operation of I/O bus
JPH10334037A (ja) * 1997-05-30 1998-12-18 Sanyo Electric Co Ltd 通信dma装置
JPH11184554A (ja) 1997-12-24 1999-07-09 Mitsubishi Electric Corp クロック制御タイプ情報処理装置
FR2773625B1 (fr) 1998-01-13 2003-01-03 Sgs Thomson Microelectronics Microcontroleur a vitesse de fonctionnement amelioree
US6912637B1 (en) * 1998-07-08 2005-06-28 Broadcom Corporation Apparatus and method for managing memory in a network switch
US6564329B1 (en) 1999-03-16 2003-05-13 Linkup Systems Corporation System and method for dynamic clock generation
US6457137B1 (en) 1999-05-28 2002-09-24 3Com Corporation Method for configuring clock ratios in a microprocessor
US6345328B1 (en) 1999-06-09 2002-02-05 Advanced Micro Devices, Inc. Gear box for multiple clock domains
US6510473B1 (en) 1999-08-19 2003-01-21 Micron Technology, Inc. Apparatus and method for automatically selecting an appropriate signal from a plurality of signals, based on the configuration of a peripheral installed within a computing device
US6393502B1 (en) * 1999-08-31 2002-05-21 Advanced Micro Devices, Inc. System and method for initiating a serial data transfer between two clock domains
US6643787B1 (en) * 1999-10-19 2003-11-04 Rambus Inc. Bus system optimization
US6513126B1 (en) * 2000-01-06 2003-01-28 Lsi Logic Corporation System for modeling a processor-encoder interface by counting number of fast clock cycles occuring in one slower clock cycle and triggering a domain module if fast clock reaches the corresponding number of cycles
US6633994B1 (en) 2000-02-22 2003-10-14 International Business Machines Corporation Method and system for optimizing data transfers between devices interconnected by buses operating at different clocking speeds
US6747997B1 (en) * 2000-06-13 2004-06-08 Intel Corporation Network channel receiver architecture
US6802015B2 (en) * 2000-12-29 2004-10-05 Hewlett-Packard Development Company, L.P. Method for accelerating the speed of a CPU using a system command having an operation not associated with changing the speed of the CPU
US6789153B1 (en) * 2001-02-20 2004-09-07 Lsi Logic Corporation Bridge for coupling digital signal processor to on-chip bus as slave
US7089441B2 (en) * 2001-02-27 2006-08-08 Intel Corporation Clock multiplier selection for a microprocessor with multiple system bus clocking frequencies
JP3510618B2 (ja) 2002-02-05 2004-03-29 沖電気工業株式会社 バスブリッジ回路及びそのアクセス制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4030451A1 (de) * 1990-09-26 1992-04-09 Siemens Ag Verfahren und vorrichtung zur direkten erzeugung von wartezyklen fuer elektronische einrichtungen, insbesondere fuer mikroprozessoren
EP0840237A1 (fr) * 1996-10-29 1998-05-06 Matsushita Electric Industrial Co., Ltd. Synchronisation de processeur avec bus externe
US20020019898A1 (en) * 2000-07-27 2002-02-14 Hitachi, Ltd. Microprocessor, semiconductor module and data processing system

Also Published As

Publication number Publication date
CN1906851A (zh) 2007-01-31
US7162003B2 (en) 2007-01-09
TW200604823A (en) 2006-02-01
FR2870368B1 (fr) 2006-12-15
CN100547924C (zh) 2009-10-07
US20050165996A1 (en) 2005-07-28

Similar Documents

Publication Publication Date Title
FR2632096A1 (fr) Systeme de microcalculateur a bus multiple avec arbitrage d'acces aux bus
FR2906377A1 (fr) Generateur et procede de generation de signal d'horloge
FR2778258A1 (fr) Controleur d'acces de trafic dans une memoire, systeme de calcul comprenant ce controleur d'acces et procede de fonctionnement d'un tel controleur d'acces
FR2870368A1 (fr) Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre
US10678723B2 (en) Urgent in-band interrupts on an I3C bus
KR100393168B1 (ko) 컴퓨터 시스템 내의 적응형 다중화 어드레스 및 데이터버스를 운영하기 위한 방법 및 장치
FR2721782A1 (fr) Concentrateur intelligent destiné à des systèmes de transfert de données à vitesses multiples.
EP0769748B1 (fr) Cellule intégrable DDC dédiée à un microprocesseur
EP1324175B1 (fr) Module de securisation de donnees par chiffrement/dechiffrement et/ou signature/verification de signature
US10684981B2 (en) Fast termination of multilane single data rate transactions
US6038235A (en) Fiber channel automatic arbitration and communication control
FR2493562A1 (fr) Systeme d'utilisation de disques en commun et d'intercommunication entre disques
FR2717645A1 (fr) Procédé et appareil de transmission de signaux par une ligne partagée.
FR2988934A1 (fr) Dispositif de communication et procede de programmation ou de correction d'erreur d'un ou plusieurs participants du dispositif de communication
EP0211763A1 (fr) Procédé d'échange de données entre un microprocesseur et une mémoire et dispositif permettant une mise en oeuvre du procédé
EP0011701A1 (fr) Système de sélection d'interface prioritaire et contrôleur de communication comprenant ce système
EP1436713B1 (fr) Dispositif de transmission de donnees asynchrones comprenant des moyens de controle de deviation d'horloge
WO2007068606A1 (fr) Procede d'acces a un bus de transmission de donnees, dispositif et systeme correspondant.
US11023408B2 (en) I3C single data rate write flow control
US10572439B1 (en) I3C read from long latency devices
EP1120714B1 (fr) Dispositif de régénération d'une horloge
EP1436712B1 (fr) Recepteur de donnees asynchrones comprenant des moyens de basculement en un mode veille
EP1436714B1 (fr) Recepteur asynchrone de type uart a deux modes de fonctionnement
EP0829095A1 (fr) Procede et dispositif de reduction du temps de latence sur une interface, par chevauchement des paquets transmis
EP4009180A1 (fr) Procédé de réinitialisation d'un dispositif maître d'un système sur puce et système sur puce correspondant

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20120928