Skip to content

Janus5G/chromaplex-os

Repository files navigation

ChromaPlex OS v1.0

Krystalbaseret programmeringssprog med farvekodning og eksponentiel datarepræsentation.

License: MIT Tests: 38/38 Passing


Navigér hurtigt


Om ChromaPlex OS

ChromaPlex OS bygger bro mellem anvendt fotonik og high-performance computerarkitektur. Projektet introducerer et domænespecifikt programmeringssprog, CPL (ChromaPlex Language), og et lavniveau instruktionssæt, CPA (ChromaPlex Assembly), designet til fremtidige optiske lagringsmedier.

I stedet for kun at tænke i traditionelle bits og bytes modellerer ChromaPlex data som:

  • Farver / bølgelængder: Rød, Grøn, Blå, Violet og UV som uafhængige optiske kanaler.
  • Eksponent-rest-repræsentation: Tal kan repræsenteres som n = 2^e + rest, hvor e er den største eksponent sådan at 2^e <= n. Det giver en entydig matematisk måde at beskrive store heltal på. Repræsentationen er tabsfri, når hele rest-værdien gemmes.
  • 3D voxels: Data placeres i præcise (x, y, z) koordinater i en krystal.
  • Parallel optik: Systemet er designet omkring idéen om simultan læsning og skrivning over mange optiske punkter.

Note

Eksponent-rest-repræsentationen er ikke universel datakomprimering i sig selv. Den kan give kompakte beskrivelser, når data har struktur, fx små eller forudsigelige rester, men vilkårlige data bliver ikke automatisk mindre end almindelig binær lagring.

Note

ChromaPlex OS er i dag et software- og simuleringsprojekt. Det demonstrerer sproget, assembleren, kompilatoren og krystalmodellen, men er ikke et færdigt fysisk hardware-produkt.

BEMÆRKNING TIL VERSION

For at få en ikke ændret eller fejlrettet version forbliver .json og unpack_chromaplex.py det samme vil du ha en fejlrettet version der virker med det nyeste udviklerværktøjer jeg laver så download .zip i stedet.

Hvad er ChromaPlex?

ChromaPlex er et programmeringssprog og instruktionssæt til styring af krystalbaseret datalagring. I stedet for kun at spørge “hvilken byte ligger på denne adresse?”, spørger ChromaPlex:

  1. Hvilket voxel-koordinat skal bruges?
  2. Hvilken farvekanal skal data skrives i?
  3. Skal tallet gemmes råt, eller som eksponent + rest?
  4. Skal data læses sekventielt eller som et større optisk plan?

Det gør projektet velegnet til at eksperimentere med arkiver, holografiske billeddata, parallel læsning og langtidsholdbar datalagring.


Programmeringssproget

ChromaPlex har to lag:

Lag Navn Formål
Højniveau CPL Letlæseligt sprog til at beskrive data, voxels, farvekanaler og lagringsoperationer.
Lavniveau CPA Assembly-lignende instruktionssæt, som kompilatoren kan generere og simulatoren kan køre.

Læs den fulde sprogdokumentation her:


Eksempel: skriv og læs et tal i en krystal

var data = 1234567;                       // Opretter variablen data med et stort heltal, som vi vil gemme optisk.
store data at (5, 5, 5) colour GREEN;     // Skriver værdien til voxel (5,5,5) i grøn kanal, fordi grøn bruges som standard stabil datakanal.
load result from (5, 5, 5) colour GREEN;  // Læser værdien tilbage fra samme koordinat og samme farvekanal.
print result;                             // Udskriver resultatet, så roundtrip kan verificeres i simulatoren.

Hvorfor grøn? Grøn kanal fungerer i dokumentationen som standardkanalen for simple eksempler, fordi den er let at aflæse visuelt og tydeligt adskilt fra UV/Violet-kanalerne, som ofte reserveres til metadata, indekser eller højpræcisionslag.


Hastighed og retention

De følgende tal er teoretiske designmål for parallel optisk hardware og skal forstås som arkitektur-motivation, ikke som målte resultater fra fysisk hardware.

Operation ChromaPlex designmål Typisk NVMe SSD Faktor
Læsning 240 GB/s 14 GB/s 17×
Skrivning 12 TB/s 10 GB/s 1200×
Retention 0 W efter skrivning Kræver aktiv infrastruktur ikke målt men i princippet∞

Komponenter

chromaplex-os/
├── chromaplex/              # Hovedbibliotek med simulator, compiler og utilities
│   ├── cpa_assembler.py     # CPA assembler
│   ├── crystal_simulator.py # 3D krystalsimulator
│   ├── cpl_compiler.py      # CPL → CPA compiler
│   ├── ai_coder.py          # AI-assisteret CPL kodegenerering
│   ├── bf_compiler.py       # Brainfuck → CPA, brugt som Turing-komplethedsbevis
│   └── utils.py             # Hjælpefunktioner til potens/remainder-konvertering
├── examples/                # Demonstrationseksempler
│   ├── hello.cpl
│   ├── full_potential_demo.cpl
│   ├── run_demo.py
│   ├── parallel_demo.py
│   └── bf_hello.bf
├── tests/                   # Test-suite
│   ├── test_demo.py
│   └── test_turing.py
├── docs/                    # Dokumentation
│   ├── programmeringssprog.md
│   ├── language_spec.md
│   ├── storage_capacity_proof.md
│   └── turing_completeness.md
├── setup.py
└── LICENSE

Hurtig start

git clone https://github.com/Janus5G/chromaplex-os.git          # Henter ChromaPlex OS kildekoden lokalt.
cd chromaplex-os                                                # Går ind i projektmappen.
pip install -e .                                                # Installerer pakken i editable mode til lokal udvikling.
python examples/run_demo.py                                     # Kører hoveddemoen og tester roundtrip fra data til krystal og tilbage.
python examples/parallel_demo.py                                # Kører demoen for sekventiel vs. parallel læsning i simulatoren.
python -m pytest tests/ -v                                      # Kører test-suiten og viser detaljeret testoutput.

Use cases

Langtidsarkiv

ChromaPlex kan bruges som softwaremodel for arkivering af kulturarv, forskningsdata og offentlige dokumenter, hvor målet er databevaring uden kontinuerlig strøm i en fremtidig optisk lagringsarkitektur.

Holografiske billeder

RGB-data kan fordeles over rød, grøn og blå kanal i samme voxelplan, så et billede kan rekonstrueres fra optiske lag.

Videnskabelige datasæt

Store numeriske værdier kan beskrives som n = 2^e + rest, hvilket gør sproget interessant til datasæt med store tal, målinger eller indekser, især når værdierne har struktur eller små rester.

Turing-komplet eksperiment

Brainfuck-kompilatoren demonstrerer, at CPA kan simulere et kendt Turing-komplet sprog gennem voxel-baseret hukommelse.


Arkitektur & Dokumentation

Den fulde tekniske specifikation og arkitektur-dokumentation for systemet er udskilt i sit eget repository for at holde koden ren. Her finder du ChromaPlex v2.0 og det spatiale tensor-instruktionssæt:

👉 Læs ChromaPlex v2.0 Specification & Architecture


Miljøvenlig datalagring

Efter skrivning kræver det antagede optiske lagringsmedie ingen kontinuerlig strøm for at fastholde data i den teoretiske lagringsmodel. Det gør ChromaPlex relevant som softwaremodel for fremtidige arkiver, hvor retention og energiforbrug er vigtigere end konstant omskrivning.


Licens

MIT – se LICENSE.

Relaterede repositories

About

Et eksperimentelt, dybdegående instruktionssæt og simulator til ultrahurtig datalagring med flere bølgelængder i smeltede silicakrystaller.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors