Blog

3-minútové čítanie

Ukážka Zákazníckeho a Partnerského Portálu

prezentovaná na Medzinárodnom kongrese ITAPA 2021

Tachyum Emulačný portál

Pri vývoji nového procesora je nevyhnutná dokonalá koordinácia práce architektov, hardwarového, softvarového a verifikačného tímu. Architekti sú zodpovední za návrh čipu, inštrukčnú sadu, mechanizmus načítania a vykonávania inštrukcií, spôsob kooperácie jednotlivých procesorov vrámci multi-socket serverového riešenia a mnoho iných aktivít, ktoré definujú vlastnosti procesora a jeho schopnosti komunikácie s perifériami.

Softvérové tímy

Jeden zo softvérových tímov na základe inštrukčnej sady, organizácie pamäte a periférií modifikuje kompilátory GCC a LLVM tak, aby vedeli generovať vysoko efektívny strojový kód naplno využívajúci kapacitu novo navrhnutého procesora.

Na rad prichádza ďalší softvérový tím, ktorý upravuje a kompiluje operačné systémy tak, aby vedeli bezchybne pracovať na novej architektúre. Okrem operačných systémov je dôležité zabezpečiť kompatibilitu rozšírených aplikácií, najmä tých, ktoré sa intenzívne využívajú v dátových centrách. Jedná sa o nespočetné množstvo databázových programov, webhostingových a streamovacích nástrojov, programov realizujúcich trénovanie neurónových sietí, nástrojov na vzdialenú správu serverov, atď…

Zoznam v súčasnosti podporovaných balíčkov nájdete po prihlásení v záložke software:

Zoznam podporovaného softvéru

Ako však vieme overiť funkčnosť týchto programov, ak nemáme k dispozícii prototyp procesora?

Aby sme mohli overiť funkčnosť portovaných systémov a aplikácií, využívame emulátory ktoré imitujú procesy v nami vytvorenej architektúre. Tieto bežia na výkonných serveroch umiestnených priamo v sídle Tachyum v Bratislave. V takomto virtualizovanom prostredí naši inžinieri aplikácie testujú, sledujú ich výkon a kontrolujú výpis strojového kódu.

Virtualizačné servery

Hardvérové tímy

Hardvérový tím pracuje paralelne so softvérovým tímom, na základe architektúry navrhuje vnútorné zapojenie procesora tak, aby dosahoval požadované technické parametre. Takýto model zapojenia je vlastne obrovskou schémou zostavenou z logických hradiel a funkčných blokov, cez ktoré je možné ku procesoru pripájať periférie ako DDR5 pamäte a PCI express zariadenia.

Takýto model a každý jeho komponent je verifikačným tímom dôsledne overovaný. Po tomto kroku sa stáva podkladom pre zadanie procesora do výroby, no zároveň rovnaké zapojenie vieme “spustiť” na našom FPGA prototype, ktorý využíva jedny z najmodernejších FPGA čipov od spoločnosti Intel.

Diagram hardvérového dizajnu

FPGA prototyp je zároveň ďalšou úrovňou pri verifikácii funkčnosti prototypu a jeho schopnosti spúšťať komplexné algoritmy a operačné systémy.

FPGA prototyp

Emulačný portál

Emulačný portál umožňuje sprístupniť virtuálne stroje bežiace na architektúre Tachyum Prodigy ako aj FPGA prototyp našim partnerom. Vďaka tomu môžu overiť kompatibilitu nástrojov, ktoré využívajú, alebo požiadať softvérový tím o asistenciu s portovaním týchto programov.

Nasledujúce video znázorňuje proces prihlasovania sa do emulačného portálu a prácu s operačným systémom Linux 5.10.27. V ukážke uvidíte

  • identifikáciu systému
  • kompiláciu jednoduchého programu napísaného v jazyku C
  • výpis strojového kódu pre tento program
  • vyklonovanie aplikácií z git repozitára
  • ich kompiláciu a testovanie
  • spustenie jednoduchej java aplikácie
  • aplikáciu zobrazujúcu zoznam účastníkov konferencie ITAPA 2021 napísanú v jazyku python

Vo videu boli použité nasledujúce krátke úryvky kódu:

  • Jazyk C/C++
#include <stdio.h>
int main()
{
  printf("\n\n\t\tTachyum zdravi Itapu 2021\n\n\n");
  return 0;
}
  • Jazyk Java
class ahoj {
  public static void main(String args[])
  {
    System.out.println("\n\n\t\tAhoj Itapa 2021!\n\n"):
  }
}
  • Jazyk Python
import re  
import urllib.request

speakri = []
for i in range(9):
  s = 'https://www.itapa.sk/9181-sk/spikri/?kongres=&page=%d' % i
  f = urllib.request.urlopen(s)
  html = f.read().decode('utf-8')
  speakri += re.findall('<h3 class=\"title\">(.*)</h3>',html)

speakri.sort()
print(speakri)

Fotogaléria

Prezrite si fotografie z Medzinárodného kongresu ITAPA 2021:

Pre prístup do Emulačného portálu kontaktujte náš tím na e-mailovej adrese