Arquitectura de una Cpu

9 Me gusta


Esto es lo que hice yo

---
config:
  theme: default
---
flowchart RL
 subgraph s1["BUS"]
        n5["**Bus de control**<br>*Gobierna el acceso a la dirección y a los datos*"]
        n6["**Bus de datos**<br>*Intercambia datos entre MP y CPU*"]
        n7["**Bus de dirección**<br>*Designa la dirección de un dato*"]
  end
 subgraph s2["CPU"]
        n9["**UC**<br>*Unidad de Control*<br>-<br>*Ejecución de la instrucción y señales de control, como el cerebro*"]
        n10["**ALU**<br>*Unidad Aritmético-Lógica*<br>-<br>*Operaciones aritméticas*"]
        n11["**REGISTROS**"]
        n12["**PC**<br>*Program Counter*<br>-<br>*Próxima instrucción*"]
        n13["**IR**<br>*Instruction Register*<br>-<br>*Inmediata instrucción*"]
        n14["Untitled Node"]
        n18["**MAR**<br>*Memory Access Register*<br><br>**MBR**<br>*Memory Buffer Register*<br><br>**Registro de estado**"]
  end
 subgraph s3["<br>"]
        n16["**E/S**<br>Periféricos"]
        n17["**Memoria secundaria**<br>*Disco duro*"]
  end
    n5 --> n6 & n7
    n7 --> n6
    n11 --> n12 & n13 & n18
    n12 --> n14
    n13 --> n14
    n14 --> n9
    n9 <-- envía resultados de operaciones --> n10
    s1 <--> s2
    n15["**MP**<br>*Memoria principal*<br>-<br>*Almacena las instrucciones de los programas*"] <--> s1
    s3 <--> s1
    n18 --> n14

    n5@{ shape: rect}
    n14@{ shape: sm-circ}
    n15@{ shape: cyl}
     n5:::Class_34
     n6:::Class_40
     n7:::Class_26
     n9:::Class_48
     n10:::Class_26
     n11:::Class_40
     n12:::Class_40
     n13:::Class_40
     n18:::Class_40
     n15:::Class_40
    classDef Peach stroke-width:1px, stroke-dasharray:none, stroke:#FBB35A, fill:#FFEFDB, color:#8F632D
    classDef Rose stroke-width:1px, stroke-dasharray:none, stroke:#FF5978, fill:#FFDFE5, color:#8E2236
    classDef Class_45 fill:#ffedef
    classDef Sky stroke-width:1px, stroke-dasharray:none, stroke:#374D7C, fill:#E2EBFF, color:#374D7C
    classDef Class_47 fill:#F8D982, stroke:#D50000
    classDef Class_27 fill:#e9f0ff
    classDef Ash stroke-width:1px, stroke-dasharray:none, stroke:#999999, fill:#EEEEEE, color:#000000
    classDef Class_28 fill:#ffa8ee
    classDef Class_43 fill:#f8eafa
    classDef Class_31 fill:#FFF9C4
    classDef Class_32 fill:#E1BEE7
    classDef Class_50 fill:#acacac, stroke:#000000, color:#FFFFFF
    classDef Class_51 fill:#f1f1f1
    classDef Class_41 fill:#fffdf3
    classDef Class_42 fill:#fff3e2
    classDef Class_52 fill:#ffe3e3
    classDef Class_39 fill:#ffd6fc
    classDef Class_53 fill:#e8daff
    classDef Class_49 stroke:#000000, fill:#FFFFFF, color:#000000
    classDef Class_37 fill:#fafaff
    classDef Class_34 fill:#FFCDD2
    classDef Class_26 fill:#ceddff
    classDef Class_33 fill:#FFE0B2
    classDef Class_48 fill:#757575, color:#FFFFFF, stroke:#FFFFFF
    classDef Class_30 fill:#C8E6C9
    classDef Class_40 fill:#e3eee3
    style s2 fill:#FFFFFF,stroke:#000000
    style s3 fill:#FFE0B2
4 Me gusta

¿Qué otros lenguaces o herramientas CLI hay para hacer ese tipos de gráficos? Suelo emplear graphviz directamente en archivos dot pero quiero ver otras alternativas.

1 me gusta

Aquí hay un listado de programas libres para hacer diagramas de flujo.

Mermaid, Graphviz y PlantUML son los tres únicos lenguajes que conozco para componer diagramas.

2 Me gusta

Ala no sabía tanto de eso era para buscar apoyo con la construcción de una CPU de 8 bits. Gracias