diff --git a/infotro/README.md b/infotro/README.md index 59fb085..1b92f75 100644 --- a/infotro/README.md +++ b/infotro/README.md @@ -26,7 +26,7 @@ - [PLA - Programmation en langage assembleur](/infotro/SEm/PLA.md) - [ASM - Assembleur ARM](/infotro/SEm/ASM.md) - [INT - Interruptions](/infotro/SEm/INT) - +- [SoC - System on Ship](/infotro/SEm/SoC) # TODOs - [ ] PTR - add layer diagram in RTOS diff --git a/infotro/SEm/README.md b/infotro/SEm/README.md index b57311a..4aca81b 100644 --- a/infotro/SEm/README.md +++ b/infotro/SEm/README.md @@ -15,3 +15,6 @@ Systèmes Embarqués - CAM - Memoire cache # CI / TDD + +# VHDL +- [SoC - System on ship](/infotro/SEm/SoC.md) diff --git a/infotro/SEm/SoC.md b/infotro/SEm/SoC.md new file mode 100644 index 0000000..b8cc534 --- /dev/null +++ b/infotro/SEm/SoC.md @@ -0,0 +1,55 @@ +# Machine d'état + +## SM de Moore + +Le changement des sorties se fait de façon synchrone. + +## SM de Mealy + +Le changement des sorties se fait de façon asynchrone, car les entrées peuvent impacter instantanément les sorties. + +## Marche à suivre + +1. Identifier les états +2. Mettre les flip-flops qui stockent l'état actuel +3. Equation booléen qui défini l'état actuel en fonction des entrées +4. Equation booléenne qui défini les sorties + +> [!warning] L'équation de la sortie dépend des états, mais parfois aussi des entrées dans le cadre d'un machine de Mealy + +# Porte logique + +# D-Latch + +- asychrone (souvent il y a un enable) + +# Flip-flop + +- synrchone avec l'horloge +- fonctionne avec deux D-Latch en série + +# MOSFET + +![mosfet.png](medias%2Fmosfet.png) + +Le MOSFET fonctionne de la manière suivante : +Le contact entre la **source** et le **drain** se fait lorsqu'on met un courant dans la **gate**. Cela attire les électrons et les place sous la forme d'un file (résistance) entre les deux côtés. + +Unipolaire : commandé en tension +Bipolaire : commandé en courant + +## Portes logiques + +AND : mettre les NMOS en série +OR : mettre les NMOS en parallèle + +> [!info] Avec les PMOS on fait l'inverse + +Avec ces deux portes, on peut recréer toutes les autres portes. + +# Glitch + +Le glitch provient des retard de propagation à chaque porte, qui peuvent provoquer des changements d'états non défini entre les portes ou en sorties. Il est du au condensateur qui se trouvent dans le portes logiques. +Pour résoudre se problème, on peut rajouter un étage de flip-flop. + +Le délai provient aussi de la résistance des transistors qui se trouve entre le drain et la source. On peut jouer sur la langueur et la largeur. diff --git a/infotro/SEm/medias/mosfet.png b/infotro/SEm/medias/mosfet.png new file mode 100644 index 0000000..60a5efd Binary files /dev/null and b/infotro/SEm/medias/mosfet.png differ diff --git a/infotro/_navbar.md b/infotro/_navbar.md index 3ca973c..ab12d36 100644 --- a/infotro/_navbar.md +++ b/infotro/_navbar.md @@ -19,4 +19,5 @@ * [SEm - Systèmes Embarqués](/infotro/SEm/) * [PLA - Programmation en langage assembleur](/infotro/SEm/PLA) * [ASM - Assembleur ARM](/infotro/SEm/ASM) - * [INT - Interruptions](/infotro/SEm/INT) \ No newline at end of file + * [INT - Interruptions](/infotro/SEm/INT) + * [SoC - System on Ship](/infotro/SEm/SoC) \ No newline at end of file