Woche 10
Maximale Laufzeit, Worst Case Execution Time( WCET)
Isochrone
Isochronität
PROFINET Handbuch, Prof. Max Felser, Berner Fachhochschule
MinutePROFINET Industrial Internet of Things: PROFINET Intro
Woche 13
Cache Placement Policies
CSCI 4717: Direct Mapping Cache Assignment
Direct Mapping — Map cache and main memory
CPU cache
Cache-Algorithmus
Cache-Kohärenz
- Zustandsmaschine
- Automat
- Moor-Automat
- Mealy-Automat
Schaltwerke
Technische Informatik – Automaten
Kellerautomat
Die (Halbleitertechnik) (Chip, Teil eines Halbleiter-Wafers)
Latch
Lookup-Tabelle (LUT)
Multiplexer (MUX)
Combinatory logic
Kombinatorische Logik
VHDL
“Use” and “Library” in VHDL
How to use a Package in your VHDL design – with Example code!
Non-synthesisable VHDL code for 8 point FFT algorithm
Entity Instantiation – An easy way of Port mapping your components
Four (and a half) ways to write VHDL instantiations
Configurations: Part 1
Configuration Declaration
Component Instantiation
entity = primary unit, external view, chip pins
architecture = secondary unit, internal view, package body, chip die
design entity = entity + architecture
components
package = user defined data types, constants,
functions, procedures
library = collection of related packages
Quartus 18.1 on Ubuntu
Abkürzungen
.qws |
Quartus Workspace File (Settings and Configuration Files) |
.qsf |
Quartus Settings File |
.qpf |
Quartus Project File |
.bdf |
Block Design File |
Videos
Problems
How to dockerize Intel Quartus 18.01
$ jtagconfig No JTAG hardware available <Connect Board> $ jtagconfig 1) USB-Blaster [1-2] ^C $ sudo killall jtagd $ jtagconfig 1) USB-Blaster [1-2] 020F40DD 10CL040(Y|Z)/EP3C40/EP4CE30/..
$ jtagd --foreground --debug JTAG daemon started Using config file /etc/jtagd/jtagd.conf Remote JTAG permitted when password set No USB device change detection because libudev.so.0 not found USB-Blaster "USB-Blaster" firmware version 4.00 USB-Blaster endpoints out=02(64), in=81(64); urb size=1024 USB-Blaster added "USB-Blaster [1-2]" $ cd /lib/x86_64-linux-gnu/ $ sudo ln -s libudev.so.1 libudev.so.0 $ ls -la libudev.so* lrwxrwxrwx 1 root root 12 Oct 17 13:10 libudev.so.0 -> libudev.so.1 lrwxrwxrwx 1 root root 16 Jul 20 19:13 libudev.so.1 -> libudev.so.1.6.9 -rw-r--r-- 1 root root 121016 Jul 20 19:13 libudev.so.1.6.9 $ jtagd --foreground --debug JTAG daemon started Using config file /etc/jtagd/jtagd.conf Remote JTAG permitted when password set USB-Blaster "USB-Blaster" firmware version 4.00 USB-Blaster endpoints out=02(64), in=81(64); urb size=1024 USB-Blaster added "USB-Blaster [1-2]"
ModelSim on Ubuntu
https://www.cc.gatech.edu/~hadi/teaching/cs3220/doc/modelsim/modelsimTutorial.pdf
ModelSim 10.1a Tutorial (PDF), p. 69, Automating Simulation
Videos
Modelsim/Quartus Tutorial
ModelSim Tutorial
Problems
Altera-Modelsim can not start on Ubuntu 18.04
ModelSim Installation issues – Ubuntu 14.xx and above
Making ModelSim ALTERA STARTER EDITION vsim 10.1d work on Ubuntu 14.04
$ ls -la /opt/intelFPGA_lite/18.1/modelsim_ase/bin/vcom
lrwxrwxrwx 1 root root 6 Oct 3 15:53 /opt/intelFPGA_lite/18.1/modelsim_ase/bin/vcom -> ../vco
$ ls -la /opt/intelFPGA_lite/18.1/modelsim_ase/bin/vsim
lrwxrwxrwx 1 root root 6 Oct 3 15:53 /opt/intelFPGA_lite/18.1/modelsim_ase/bin/vsim -> ../vco
$ sudo xed /opt/intelFPGA_lite/18.1/modelsim_ase/vco
13: mode=${MTI_VCO_MODE:-"32"}
[...]
210: *) vco="linux" ;;
$ /opt/intelFPGA_lite/18.1/modelsim_ase/bin/vsim
Error in startup script:
Initialization problem, exiting.
Initialization problem, exiting.
while executing
"InitializeINIFile quietly"
invoked from within
"ncFyP12 -+"
(file "/mtitcl/vsim/vsim" line 1)
** Fatal: Read failure in vlm process (0,0)
$ sudo dpkg --add-architecture i386
$ sudo apt-get update
$ sudo apt-get install gcc-multilib g++-multilib lib32z1 lib32stdc++6 lib32gcc1 \
expat:i386 fontconfig:i386 libfreetype6:i386 libexpat1:i386 libc6:i386 \
libgtk-3-0:i386 libcanberra0:i386 libice6:i386 libsm6:i386 libncurses5:i386 \
zlib1g:i386 libx11-6:i386 libxau6:i386 libxdmcp6:i386 libxext6:i386 libxft2:i386 \
libxrender1:i386 libxt6:i386 libxtst6:i386
$ wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.12.tar.bz2
$ tar -xjf freetype-2.4.12.tar.bz2
$ cd freetype-2.4.12
$ ./configure --build=i686-pc-linux-gnu "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"
$ make -j8
$ sudo mkdir /opt/intelFPGA_lite/18.1/modelsim_ase/lib32
$ sudo cp objs/.libs/libfreetype.so* /opt/intelFPGA_lite/18.1/modelsim_ase/lib32
dir=`dirname "$arg0"`
export LD_LIBRARY_PATH=${dir}/lib32
$ /opt/intelFPGA_lite/18.1/modelsim_ase/bin/vsim
WORKS!
VirtualBox
$ sudo dpkg -i virtualbox-5.2_5.2.20-125813~Ubuntu~bionic_amd64.deb
[sudo] password for andreas:
Selecting previously unselected package virtualbox-5.2.
(Reading database ... 378749 files and directories currently installed.)
Preparing to unpack virtualbox-5.2_5.2.20-125813~Ubuntu~bionic_amd64.deb ...
Unpacking virtualbox-5.2 (5.2.20-125813~Ubuntu~bionic) ...
dpkg: dependency problems prevent configuration of virtualbox-5.2:
virtualbox-5.2 depends on libcurl4 (>= 7.16.2); however:
Package libcurl4 is not installed.
virtualbox-5.2 depends on libqt5opengl5 (>= 5.0.2); however:
Package libqt5opengl5 is not installed.
dpkg: error processing package virtualbox-5.2 (--install):
dependency problems - leaving unconfigured
Processing triggers for systemd (237-3ubuntu10.3) ...
Processing triggers for ureadahead (0.100.0-20) ...
ureadahead will be reprofiled on next reboot
Processing triggers for gnome-menus (3.13.3-11ubuntu1.1) ...
Processing triggers for desktop-file-utils (0.23+linuxmint3) ...
Processing triggers for mime-support (3.60ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for shared-mime-info (1.9-2) ...
Errors were encountered while processing:
virtualbox-5.2
$ sudo apt-get --fix-broken install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
libasn1-8-heimdal:i386 libffi6:i386 libgmp10:i386 libgnutls30:i386 libgssapi-krb5-2:i386 libgssapi3-heimdal:i386 libhcrypto4-heimdal:i386 libheimbase1-heimdal:i386 libheimntlm0-heimdal:i386 libhogweed4:i386 libhx509-5-heimdal:i386
libidn2-0:i386 libk5crypto3:i386 libkeyutils1:i386 libkrb5-26-heimdal:i386 libkrb5-3:i386 libkrb5support0:i386 libldap-2.4-2:i386 libnettle6:i386 libnghttp2-14:i386 libp11-kit0:i386 libpsl5:i386 libroken18-heimdal:i386 librtmp1:i386
libsasl2-2:i386 libsasl2-modules-db:i386 libsqlite3-0:i386 libssl1.0.0:i386 libtasn1-6:i386 libunistring2:i386 libwind0-heimdal:i386 linux-headers-4.15.0-33 linux-headers-4.15.0-33-generic linux-image-4.15.0-33-generic
linux-modules-4.15.0-33-generic linux-modules-extra-4.15.0-33-generic
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
libcurl4 libqt5opengl5
The following packages will be REMOVED:
libcurl3:i386 libcurl3
The following NEW packages will be installed:
libcurl4 libqt5opengl5
0 upgraded, 2 newly installed, 2 to remove and 25 not upgraded.
1 not fully installed or removed.
Need to get 132 kB/346 kB of archives.
After this operation, 151 kB disk space will be freed.
Do you want to continue? [Y/n] y
Get:1 http://archive.ubuntu.com/ubuntu bionic/main amd64 libqt5opengl5 amd64 5.9.5+dfsg-0ubuntu1 [132 kB]
Fetched 132 kB in 0s (834 kB/s)
(Reading database ... 379569 files and directories currently installed.)
Removing libcurl3:i386 (7.58.0-2ubuntu2) ...
Removing libcurl3:amd64 (7.58.0-2ubuntu2) ...
Selecting previously unselected package libcurl4:amd64.
(Reading database ... 379561 files and directories currently installed.)
Preparing to unpack .../libcurl4_7.58.0-2ubuntu3.3_amd64.deb ...
Unpacking libcurl4:amd64 (7.58.0-2ubuntu3.3) ...
Selecting previously unselected package libqt5opengl5:amd64.
Preparing to unpack .../libqt5opengl5_5.9.5+dfsg-0ubuntu1_amd64.deb ...
Unpacking libqt5opengl5:amd64 (5.9.5+dfsg-0ubuntu1) ...
Setting up libcurl4:amd64 (7.58.0-2ubuntu3.3) ...
Setting up libqt5opengl5:amd64 (5.9.5+dfsg-0ubuntu1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Setting up virtualbox-5.2 (5.2.20-125813~Ubuntu~bionic) ...
Adding group `vboxusers' (GID 129) ...
Done.
vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root.
$ sudo /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root.
$ virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (4.15.0-36-generic) or it failed to
load. Please recompile the kernel module and install it by
sudo /sbin/vboxconfig
You will not be able to start VMs until this problem is fixed.