M-Labs
M-Labs (wcześniej znany jako projekt Milkymist ) to firma i społeczność, która opracowuje, produkuje i sprzedaje zaawansowane otwarte urządzenia sprzętowe i oprogramowanie. Jest znany z Milkymist system-on-chip (SoC), który jest skomercjalizowaną konstrukcją typu system-on-chip z bezpłatnym kodem źródłowym HDL .
Technologie M-Labs zostały ponownie wykorzystane w różnych zastosowaniach. Na przykład NASA Communication Navigation and Networking Reconfigurable Testbed (CoNNeCT) wykorzystuje kontroler pamięci , który został pierwotnie opracowany dla Milkymist One i opublikowany na warunkach GNU General Public License (GPL).
Projekt był prezentowany na kilku konferencjach open source i hakerskich , takich jak Chaos Communication Congress , FOSDEM , Libre Software Meeting i Libre Graphics Meeting 2011 . Została również opisana na Make , a tablica Milkymist One została uwzględniona w ich „najlepszym przewodniku po prezentach sprzętowych typu open source 2010”.
Mleczarski SoC
System-on-chip Milkymist wykorzystuje rdzeń LatticeMico32 (LM32) jako procesor ogólnego przeznaczenia. Jest to 32-bitowy procesor big endian RISC z jednostką zarządzania pamięcią (MMU) opracowaną później przez współpracowników M-Labs. Jest obsługiwany przez GCC i może uruchamiać RTEMS i μClinux . Istnieje również eksperymentalny back-end dla LLVM ukierunkowany na ten mikroprocesor.
Mikroprocesor LM32 jest wspomagany przez jednostkę mapowania tekstur i programowalny koprocesor zmiennoprzecinkowy VLIW , które są używane przez oprogramowanie do syntezy wideo Flickernoise . Jest również otoczony różnymi rdzeniami peryferyjnymi, które obsługują każde urządzenie I/O Milkymist One. Interkonekt system-on-chip wykorzystuje trzy zmostkowane magistrale i łączy Wishbone z dwoma niestandardowymi protokołami używanymi do rejestrów konfiguracyjnych i wysokowydajnego DMA z pamięcią SDRAM .
Architektura systemu Milkymist na chipie jest w dużej mierze udokumentowana w raporcie z pracy magisterskiej założyciela projektu. Większość komponentów systemu na chipie, z wyjątkiem LatticeMico32 , została opracowana na zamówienie i objęta licencją GNU GPL .
Emulatora QEMU można używać do uruchamiania i debugowania plików binarnych SoC Milkymist na innym komputerze.
Milkymist One i Flickernoise
Producent | Sprzęt Qi |
---|---|
Typ | Syntezator wideo |
Data wydania | 27 grudnia 2010 | (wczesny zestaw deweloperski), 28 września 2011 (wersja ostateczna)
Cena wprowadzająca | 380 EUR (wczesny zestaw deweloperski), 499 USD (wersja ostateczna) |
System operacyjny | RTEMS , Linux |
procesor | LatticeMico32 w układzie FPGA Xilinx Spartan-6 |
Pamięć | 128 MB pamięci DDR-SDRAM |
Składowanie | 32 MB wbudowanej pamięci flash NOR, karta pamięci |
Wyświetlacz | SVGA do 140 MHz w pikselach (1280x1024) |
Wejście | Klawiatura i mysz USB |
Kamera | Zewnętrzny ( digitalizator CVBS ) |
Łączność | DMX512 , MIDI , OpenSoundControl , audio AC97 , Ethernet , RC-5 na podczerwień, USB , GPIO |
Moc | 5 W |
Wymiary | 172 × 145 × 45 mm |
Masa | 465 gr |
Syntezator wideo i rekonfigurowalny komputer Milkymist One to główny produkt wydany w ramach projektu. Został wyprodukowany przez Qi Hardware , start-up założony przez byłych pracowników Openmoko . Został po raz pierwszy sprzedany na Chaos Communication Congress w 2010 roku jako „zestaw wczesnego programisty” dla zainteresowanych hakerów , aktywistów open source i pionierów, którzy mogli tolerować pozostałe oprogramowanie i FPGA wady projektowe. Bardziej wyrafinowana wersja, zawierająca etui i akcesoria, została później sprzedana.
Specyfikacje techniczne Milkymist One są następujące:
- Wielostandardowe wejście wideo ( PAL / SECAM / NTSC )
- Dwa porty DMX512 ( RS485 ).
- MIDI IN i MIDI OUT
- SVGA , 24 bpp, zegar pikseli do 140 MHz (około 1280×1024)
- Dźwięk AC97
- Xilinx XC6SLX45 Spartan-6 FPGA obsługujący open source Milkymist SoC
- 128 MB 32-bitowej pamięci SDRAM DDR333
- Pamięć flash równoległa 32 MB
- Ethernet 10/100
- Karta pamięci
- Dwa złącza hosta USB
- Odbiornik podczerwieni kompatybilny z RC-5
- Port debugowania RS-232
Pliki projektu płytki drukowanej i pliki CAD obudowy zostały udostępnione na licencji Creative Commons Attribution-Share Alike.
Flickernoise to oprogramowanie do syntezy wideo, które działa na Milkymist One. Jest silnie inspirowany MilkDrop i używa podobnego, w dużej mierze kompatybilnego języka skryptowego do definiowania i programowania efektów wizualnych. Jednak podczas gdy MilkDrop jest przeznaczony do automatycznego uruchamiania w odtwarzaczu muzycznym, Flickernoise koncentruje się na interaktywności wizualizacji do wykorzystania podczas występów na żywo. Oprogramowanie obsługuje programowanie efektów wizualnych, które przekształcają strumień wideo na żywo pochodzący z kamery podłączonej do Milkymist One, a także dane wejściowe z OpenSoundControl , DMX512 i MIDI kontrolery.
Flickernoise działa w systemie operacyjnym czasu rzeczywistego RTEMS i wykorzystuje wiele bibliotek oprogramowania POSIX , które zostały przeniesione do tego systemu operacyjnego, takich jak libpng , libjpeg , jbig2dec, OpenJPEG , FreeType , MuPDF i liblo do obsługi OpenSoundControl . Usprawniona platforma sprzętowa i wykorzystanie systemu operacyjnego czasu rzeczywistego sprawiają, że system ma krótszy czas reakcji niż równoważna konfiguracja oparta na komputerze PC. Interfejs użytkownika oparty jest na wariancie zestawu Genode FX.
Flickernoise jest również wolnym oprogramowaniem , wydanym na warunkach Powszechnej Licencji Publicznej GNU .
ARTYKUŁ
W maju 2014 r. firma M-Labs nawiązała współpracę z NIST w celu opracowania systemu kontroli open source nowej generacji do eksperymentów z informacjami kwantowymi . System o nazwie ARTIQ (Advanced Real-Time Infrastructure for Quantum Physics) jest połączeniem oprogramowania i oprogramowania typu gateware, które umożliwia zsynchronizowane sterowanie wieloma urządzeniami z rozdzielczością taktowania na poziomie nanosekund i opóźnieniem poniżej mikrosekundy, przy jednoczesnym zachowaniu funkcji języków programowania wysokiego poziomu .
Niektóre pomysły i kod z Milkymist SoC zostały ponownie wykorzystane w ARTIQ.
W 2016 roku firma M-Labs nawiązała współpracę z ARL i ISE w celu opracowania ARTIQ Sinara, otwartej platformy sprzętowej i radiowej zdefiniowanej programowo.