Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solved some typos, Verified the diacritics and spelling mistakes, ree… #12

Merged
merged 10 commits into from
Oct 14, 2024
102 changes: 51 additions & 51 deletions chapters/grading/grading.md
Original file line number Diff line number Diff line change
@@ -1,51 +1,51 @@
# Notare
- 50p examen final
- 50p laborator
- 10p activitate laborator (prezență si teste surpriză)
- 10p Test circuite combinaționale
- 10p Test circuite secvențiale
- 20p Colocviu final calculator didactic
- 10p Tema (bonus)

### Promovare:
- Minim 25p Laborator
- Minim 50p Total

### Test circuite combinaționale
- Materia necesară: laboratoarele 1,2 și 3
- Durată: 60 de minute
- Când: la începutul laboratorului 4
- Strcutură: 3 exerciții practice de implementat în verilog
- Locație: sala de laborator
- Platformă: Calculator Laborator - Safe Exam Browser - Moodle - VPL

### Test circuite secvențiale
- Materia necesară: laboratoarele 4,5 și 6
- Durată: 60 de minute
- Când: la începutul laboratorului 7
- Strcutură: 3 exerciții practice de implementat în verilog
- Locație: sala de laborator
- Platformă: Calculator Laborator - Safe Exam Browser - Moodle - VPL

### Colocviu final calculator didactic
- Materia necesară: toate laboratoarele
- Durată: 120 de minute
- Când: la ultimul laborator
- Strcutură:
- 3 exerciții practice de implementat în verilog
- 20 întrebări teoretice
- Locație: sala de laborator
- Platformă: Calculator Laborator - Safe Exam Browser - Moodle - VPL/Quiz

### Tema
- Durată: Întreg semestrul cu termen limită începutul ultimii săptămâni de laborator
- Platformă: Moodle - VPL
- Punctaj: Se va adăuga punctajului de laborator (nu se ia în considerare la punctajul minim)
- Punctaj: Punctajul total de laborator se trunchează la 50 de puncte.

### Examen Final (AB)
- Platformă: Moodle - VPL/Quiz
- Durată: 180 de minute
- Structură:
- 20 de întrebări teoretice
- 1 problemă
# Notare

Check failure on line 1 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 50p examen final

Check failure on line 2 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 50p laborator

Check failure on line 3 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 10p activitate laborator (prezență si teste surpriză)

Check failure on line 4 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 10p Test circuite combinaționale

Check failure on line 5 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 10p Test circuite secvențiale

Check failure on line 6 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 20p Colocviu final calculator didactic

Check failure on line 7 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
- 10p Tema (bonus)

Check failure on line 8 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings

Check failure on line 9 in chapters/grading/grading.md

View workflow job for this annotation

GitHub Actions / Checkpatch

ERROR:DOS_LINE_ENDINGS: DOS line endings
### Promovare:
- Minim 25p Laborator
- Minim 50p Total

### Test circuite combinaționale
- Materia necesară: laboratoarele 1,2 și 3
- Durată: 60 de minute
- Când: la începutul laboratorului 4
- Strcutură: 3 exerciții practice de implementat în verilog
- Locație: sala de laborator
- Platformă: Calculator Laborator - Safe Exam Browser - Moodle - VPL

### Test circuite secvențiale
- Materia necesară: laboratoarele 4,5 și 6
- Durată: 60 de minute
- Când: la începutul laboratorului 7
- Strcutură: 3 exerciții practice de implementat în verilog
- Locație: sala de laborator
- Platformă: Calculator Laborator - Safe Exam Browser - Moodle - VPL

### Colocviu final calculator didactic
- Materia necesară: toate laboratoarele
- Durată: 120 de minute
- Când: la ultimul laborator
- Strcutură:
- 3 exerciții practice de implementat în verilog
- 20 întrebări teoretice
- Locație: sala de laborator
- Platformă: Calculator Laborator - Safe Exam Browser - Moodle - VPL/Quiz

### Tema
- Durată: Întreg semestrul cu termen limită începutul ultimii săptămâni de laborator
- Platformă: Moodle - VPL
- Punctaj: Se va adăuga punctajului de laborator (nu se ia în considerare la punctajul minim)
- Punctaj: Punctajul total de laborator se trunchiază la 50 de puncte.

### Examen Final (AB)
- Platformă: Moodle - VPL/Quiz
- Durată: 180 de minute
- Structură:
- 20 de întrebări teoretice
- 1 problemă
219 changes: 115 additions & 104 deletions chapters/guides/docker/linux/README.md
Original file line number Diff line number Diff line change
@@ -1,104 +1,115 @@
# Utilizare imagine docker Linux

## Cerințe necesare
1. Sa aveti VSCode instalat
2. Sa aveti un Desktop Environment sau un Window manager ce ruleaza cu X Server.
3. Sa aveti Docker CE instalat (Atentie, nu docker desktop! O sa trebuiasca privileged execution pentru a forwarda folderul /dev iar acesta face acest lucru foarte enervant si dificil)
- [Ubuntu/Fedora](https://docs.docker.com/engine/install/)
- Arch: ```sudo pacman -S docker```
* Daca aveti deja docker desktop instalat de pe AUR o sa va apara conflicte. Va apar frumos acolo pachetele conflictuale, e alegerea voastra what comes next.

## Rulare

### Opțiunea 1 din Visual Studio Code

1. Deschideți directorul repo-ului în Visual Studio Code.
```bash
code computer-architecture
```

2. Instalați extensia [Dev Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers).

3. După veți avea opțiunea "Dev Containers: Reopen in container" (`CTRL+SHIFT+P`).

### Opțiunea 2 prin docker

1. Descărcați imaginea cu docker
```bash
docker pull gitlab.cs.pub.ro:5050/ac/ac-public/vivado-slim:1.0.0
```

2. Rulați un container cu imaginea
```bash
docker run --rm -it -v /dev:/dev gitlab.cs.pub.ro:5050/ac/ac-public/vivado-slim:1.0.0 /bin/bash
```

3. Rulați vivado din imagine
```bash
vivado
```

## Troubleshooting
### Primesc eroare cand scriu in shell ```vivado```/nu apare GUI-ul
Inainte de a rula urmatoarele solutii, **asigurati-va inainte ca .devcontainer/{sshd_config,Dockerfile,devcontainer.json} respecta cerintele de securitate impuse de voi**. Urmatoarea metoda o sa expuna un port la ssh pe un container privilegiat neparolat care are expus /dev-ul vostru. Asigurati-va ca nu exista posibilitatea ca o masina remote sa se poata conecta la acel port al vostru, sau modificati sshd_config-ul astfel incat sa respecte cerintele de securitate, sau schimbati parola de root (in dockerfile)
#### Devcontainer fara GUI
Va trebui sa editati devcontainer.json (aveti comentate deja liniile necesare, decomentati image) ca sa va apara in felul acesta:
```json
{
"name": "Vivado Slim Dev",
"build": { "dockerfile": "Dockerfile" },
// "image": "gitlab.cs.pub.ro:5050/ac/ac-public/vivado-slim:1.0.0",
"runArgs": [
"--rm",
"--privileged"
],
"appPort": "2222:22",
"mounts": ["type=bind,source=/dev,target=/dev"],
//"otherPortsAttributes": {"requireLocalPort": "true", "elevateIfNeeded" : "true"},
"postStartCommand": "/usr/local/sbin/sshd",
"customizations": {
"vscode": {
"extensions": [
"mshr-h.veriloghdl"
]
}
}
}
```
Dupa apasati ```Ctrl+Shift+P``` si apasati pe ```Dev Containers: Rebuild and Reopen in Container```.

Pentru a putea accesa gui-ul deschideti un terminal (nu acela de pe vscode) si scrieti ```ssh -XY -p 2222 root@localhost```. Nu va trebui sa introduceti nicio parola. Puteti modifica portul cu ce doriti voi atata timp cat modificati acest lucru si in devcontainer.json la appPort.

#### Setup manual de docker fara GUI
In radacina proiectului computer-architecture executati
```
cd .devcontainer
docker build -t vivado-slim-sshx .
cd ..
docker run -it -v /dev:/dev -p 2222:22 -v $PWD:/workspaces/computer-architecture vivado-slim-sshx
```
### Am wayland. Ce fac?
Va trebui sa faci [pasul asta](#primesc-eroare-cand-scriu-in-shell-vivadonu-apare-gui-ul).

Exista 2 optiuni rapide:
1. Instaleaza Xwayland si urmeaza setup-ul/configurarea pentru DE-ul/WM-ul tau
2. Instaleaxa Xephyr si foloseste comanda aceasta: ```Xephyr -br -ac -noreset -screen 1920x1080 :1```. Inlocuieste 1920x1080 cu rezolutia folosita de tine, o sa se deschida o fereastra. Dupa scrii ```DISPLAY=:1 ssh -X -p 2222 root@localhost```. Gui-ul de la vivado va aparea in fereastra de tocmai s-a deschis

Mai multe detalii [aici](https://www.dbts-analytics.com/notesxfwdgb.html)

### Am ecran alb cand deschid cu wayland
scrie in shell inainte sa executi vivado ```export _JAVA_AWT_WM_NONREPARENTING=1```. Sau decomenteaza linia din Dockerfile care da echo la aceasta linie in .bashrc

### Stuck la deschiderea hardware managerului
In terminalul din vscode scrie ```hw_server```, daca o sa functioneze o sa apare cv gen
```
****** Xilinx hw_server v2022.1
**** Build date : Apr 18 2022 at 16:10:30
** Copyright 1986-2022 Xilinx, Inc. All Rights Reserved.

INFO: hw_server application started
INFO: Use Ctrl-C to exit hw_server application

INFO: To connect to this hw_server instance use url: TCP:ba86b6047b8c:3121
```
Copiati ce este intre TCP: si :3121 si folositi-l ca 'url' la conexiune remote
# Utilizare imagine Docker Linux

## Cerințe necesare
1. Să aveți VSCode instalat
2. Să aveți un Desktop Environment sau un Window Manager ce rulează cu X Server.
3. Asigurați-vă că aveți instalat Docker CE (Atenție, nu Docker Desktop! Va fi nevoie de execuție cu privilegii pentru a redirecționa folderul `/dev`, ceea ce complică și îngreunează procesul)
- [Ubuntu/Fedora](https://docs.docker.com/engine/install/)
- Arch: ```sudo pacman -S docker```
* Dacă aveți deja Docker Desktop instalat de pe AUR, o să vă apară conflicte.
Vă apar pachetele conflictuale, e alegerea voastră ce pachete păstrați.

## Rulare

### Opțiunea 1 din Visual Studio Code

1. Deschideți directorul repo-ului în Visual Studio Code.
```bash
code computer-architecture
```

2. Instalați extensia [Dev Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers).

3. După veți avea opțiunea "Dev Containers: Reopen in container" (`CTRL+SHIFT+P`).

### Opțiunea 2 prin docker

1. Descărcați imaginea cu docker
```bash
docker pull gitlab.cs.pub.ro:5050/ac/ac-public/vivado-slim:1.0.0
```

2. Rulați un container cu imaginea
```bash
docker run --rm -it -v /dev:/dev gitlab.cs.pub.ro:5050/ac/ac-public/vivado-slim:1.0.0 /bin/bash
```

3. Rulați vivado din imagine
```bash
vivado
```

## Troubleshooting
### Primesc eroare când scriu în shell ```vivado``` / nu apare GUI-ul
Înainte de a rula următoarele soluții, **asigurați-vă că `.devcontainer/{sshd_config, Dockerfile, devcontainer.json}` respectă cerințele de securitate impuse de voi**.
Următoarea metodă o să expună un port la SSH pe un container privilegiat, neparolat, care are expus `/dev`-ul vostru. Asigurează-te că nu există posibilitatea ca o mașină remote să se poată conecta la acel port sau modifică `sshd_config`-ul astfel încât să respecte cerințele de securitate, sau schimbă parola de root (în Dockerfile).

#### Devcontainer fără GUI
Trebuie să editezi fișierul `devcontainer.json` (liniile necesare sunt deja comentate, decomentează `image`) pentru a-l aduce în următorul format:
```json
{
"name": "Vivado Slim Dev",
"build": { "dockerfile": "Dockerfile" },
// "image": "gitlab.cs.pub.ro:5050/ac/ac-public/vivado-slim:1.0.0",
"runArgs": [
"--rm",
"--privileged"
],
"appPort": "2222:22",
"mounts": ["type=bind,source=/dev,target=/dev"],
//"otherPortsAttributes": {"requireLocalPort": "true", "elevateIfNeeded" : "true"},
"postStartCommand": "/usr/local/sbin/sshd",
"customizations": {
"vscode": {
"extensions": [
"mshr-h.veriloghdl"
]
}
}
}
```
După, apasă ```Ctrl+Shift+P``` și alege ```Dev Containers: Rebuild and Reopen in Container```.

Pentru a putea accesa `GUI`-ul, deschide-ți un terminal (nu cel din VSCode) și scrie ```ssh -XY -p 2222 root@localhost```.
Nu ar trebui să introduci nicio parolă.
Poți modifica portul cu ce dorești tu, atât timp cât modifici acest lucru și în `devcontainer.json` la `appPort`.

#### Setup manual de Docker fără GUI
În rădăcina proiectului `computer-architecture`, execută:
```
cd .devcontainer
docker build -t vivado-slim-sshx .
cd ..
docker run -it -v /dev:/dev -p 2222:22 -v $PWD:/workspaces/computer-architecture vivado-slim-sshx
```
### Am wayland. Ce fac?
Va trebui să faci [pasul asta](#primesc-eroare-cand-scriu-in-shell-vivadonu-apare-gui-ul).

Există 2 opțiuni rapide:
1. Instalează Xwayland și urmează setup-ul/configurarea pentru DE-ul/WM-ul tău.
2. Instalează Xephyr și folosește comanda aceasta: ```Xephyr -br -ac -noreset -screen 1920x1080 :1```.
Înlocuiește `1920x1080` cu rezoluția folosită de tine, o să se deschidă o fereastră.
După, scrii ```DISPLAY=:1 ssh -X -p 2222 root@localhost```.
GUI-ul de la Vivado va apărea în noua fereastră deschisă.
S-ar putea să fie nevoie și de un ```unset XDG_SEAT``` [în cazul în care nu toate inputurile tastaturii sau mouse-ului sunt luate în considerare](https://unix.stackexchange.com/questions/690782/mouse-and-keyboard-not-getting-captured-by-xephyr)

Mai multe detalii [aici](https://www.dbts-analytics.com/notesxfwdgb.html)

### Am ecran alb când deschid cu Wayland
Scrie în `shell`, înainte să execuți Vivado, ```export _JAVA_AWT_WM_NONREPARENTING=1```.
O altă variantă este să decommentezi linia din Dockerfile care dă `echo` la această linie în `.bashrc`.

### Stuck la deschiderea hardware managerului
În terminalul din VSCode, scrie ```hw_server```.
Dacă o să funcționeze, o să apară un output sub următorul format:
```
****** Xilinx hw_server v2022.1
**** Build date : Apr 18 2022 at 16:10:30
** Copyright 1986-2022 Xilinx, Inc. All Rights Reserved.

INFO: hw_server application started
INFO: Use Ctrl-C to exit hw_server application

INFO: To connect to this hw_server instance use url: TCP:ba86b6047b8c:3121
```
Copiază ce este între `TCP:` și `:3121` și folosește-l ca 'url' la conexiunea remote.
Loading
Loading