SlideShare a Scribd company logo
1 of 30
Download to read offline
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
SoC-powered Linux
Benefits of Linux-powered SoC-devices
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Presentation plan
● Company profile
● SoC Altera Cyclone V Architecture
● Booting Linux: SPL, U-boot, kernel
● Developing NIC
● Benchmarks
● Troubles
2
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
● 12 years of RnD experience
● Russia, Saint-Petersburg
● Development and production of measurement equipment
● Telecommunication channels verification: E1, Datacom, Ethernet
(10/100/GbE/10G/100G), fiber optics
● Network packet analysis and processing at line rate
● From idea to complete to “out of the box” solution
● Linux inside!
3
STC Metrotek
STC Metrotek
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
System On Chip
one chip integrates many components
4
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
SoC block diagram
5
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Altera SoC = HPS(CPU) + FPGA
6
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
FPGA - Field Programmable Gate Array
7
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Why use SoC?
Old school Modern design
CPU FPGAI/F
bottleneck or
complex PCB
CPU FPGA
8
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
SoC data flows
● Direct memory access
● Interconnect
● Dedicated HPS-FPGA interfaces
9
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
CPU address space
10
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
● Independent HPS and FPGA
● Boot sources: SD, QSPI, etc...
● Independent flexible configuration
(HPS or FPGA initiated)
● Dedicated memory for FPGA
registers
● High-speed interfaces
SoC architecture
11
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
CPU boots first
12
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
FPGA boots first
13
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
HPS and FPGA boots independently
14
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Booting Linux
● preloader
● U-boot + environment
● device tree
● Linux kernel
● rootfs
15
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
HPS Boot flow
16
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Preloader + U-boot
Preloader
● DDR initialization
● memtest
● basic synchronization clock
setup
U-boot
● access to peripheral
(SD/USB/Ethernet/i2c/etc..)
● filesystem support (fat/ext2)
● flexible boot configuration (boot
from TFTP, RAM, etc...)
● scripting, flexibility
● direct memory access
17
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Linux kernel
● github:altera-opensource/linux-socfpga
● v 3.18.0
18
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Device tree
19
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Booting FPGA
● Load fpga manager module
● Ensure that FPGA has been detected -- file /dev/fpga0 should exist
● Get proper FPGA firmware file -- firmware.rbf
● Load it to FPGA -- cat firmware.rbf > /dev/fpga0
● Ensure that it has been loaded -- cat /sys/class/fpga/fpga0/status
HPS and FPGA ready for data exchange!
20
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Moving to practical examples
21
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
EthOnd development board
Features:
● SoC with 2 ARMv7 Cores and FPGA
● RAM 1GB
● SD-card slot
● 2 x GbE ports
● Shield interface
● USB OTG
● UART console
● Optional PoE
● RTC
22
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
EthOnd block diagram
23
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
NIC block diagram
24
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
NIC Features
● 2 ports
● NAPI support
● frame sizes 64-1518
● DMA support
● 10/100/1000 Mbps, full duplex
● ethtool support (link speed, link
status)
● MDIO support
● low-level timestamping
25
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Packet timestamping
26
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
NIC Benchmarks
● TCP iperf on 1500 bytes, TCP window size 85K -- 370 Mbit/s
● UDP for different frame sizes: 16 - 377 Mbit/s
● Delay via office switch - 3 us
27
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Troubles…
● Hardware MAC (stmmac) did not communicate with
FPGA
● Sometimes Qsys generates invalid interconnect
● DDR3: 66 MHz instead of 333 MHz
● i2c controller hangs up
● Linux v3.18 has issue with i2c interrupts
● U-boot does not support ULPI
● Linux 3.12 hangs up with pre-loaded FPGA
● fpga2sdram interface should be configured in U-
boot
● UART generates thousands of interrupts in 3.18
28
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
● Single chip
● High-speed interconnect
● Linux kernel
● Flexibility
Pros and cons
29
● CPU frequency cannot be changed
at run-time
● High chip temperature
● Drivers are still crude yet ;)
STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin
Thank you!
30

More Related Content

What's hot

Hacking PLCs and Causing Havoc on Critical Infrastructures
Hacking PLCs and Causing Havoc on Critical InfrastructuresHacking PLCs and Causing Havoc on Critical Infrastructures
Hacking PLCs and Causing Havoc on Critical InfrastructuresPriyanka Aash
 
Preparation for mit ose lab4
Preparation for mit ose lab4Preparation for mit ose lab4
Preparation for mit ose lab4Benux Wei
 
Installation of NS2 and Congestion Control
Installation of NS2 and Congestion ControlInstallation of NS2 and Congestion Control
Installation of NS2 and Congestion Controlnanmagandh
 
Micro Assignment 2
Micro Assignment 2Micro Assignment 2
Micro Assignment 2babak danyal
 
A Gomez TimTrack at C E S G A
A Gomez  TimTrack at C E S G AA Gomez  TimTrack at C E S G A
A Gomez TimTrack at C E S G AMiguel Morales
 

What's hot (6)

Hacking PLCs and Causing Havoc on Critical Infrastructures
Hacking PLCs and Causing Havoc on Critical InfrastructuresHacking PLCs and Causing Havoc on Critical Infrastructures
Hacking PLCs and Causing Havoc on Critical Infrastructures
 
Preparation for mit ose lab4
Preparation for mit ose lab4Preparation for mit ose lab4
Preparation for mit ose lab4
 
Installation of NS2 and Congestion Control
Installation of NS2 and Congestion ControlInstallation of NS2 and Congestion Control
Installation of NS2 and Congestion Control
 
Micro Assignment 2
Micro Assignment 2Micro Assignment 2
Micro Assignment 2
 
A Gomez TimTrack at C E S G A
A Gomez  TimTrack at C E S G AA Gomez  TimTrack at C E S G A
A Gomez TimTrack at C E S G A
 
Timing analysis
Timing analysisTiming analysis
Timing analysis
 

Similar to SoC-powered Linux / Linux-powered SoC

MTCNA Intro to routerOS
MTCNA Intro to routerOSMTCNA Intro to routerOS
MTCNA Intro to routerOSGLC Networks
 
MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1GLC Networks
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...Puppet
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBSamsung Open Source Group
 
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...OpenStack Korea Community
 
Lcu14 101- coresight overview
Lcu14 101- coresight overviewLcu14 101- coresight overview
Lcu14 101- coresight overviewLinaro
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxSamsung Open Source Group
 
Zabbix for Monitoring
Zabbix for MonitoringZabbix for Monitoring
Zabbix for MonitoringGLC Networks
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceSamsung Open Source Group
 
HKG15-301: OVS implemented via ODP & vendor SDKs
HKG15-301: OVS implemented via ODP & vendor SDKsHKG15-301: OVS implemented via ODP & vendor SDKs
HKG15-301: OVS implemented via ODP & vendor SDKsLinaro
 
Tft touch screen manufacturers
Tft touch screen manufacturersTft touch screen manufacturers
Tft touch screen manufacturersKeatonParker2
 
GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~
GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~
GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~Kohei KaiGai
 
Mikrotik Bridge Deep Dive
Mikrotik Bridge Deep DiveMikrotik Bridge Deep Dive
Mikrotik Bridge Deep DiveGLC Networks
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...PROIDEA
 
Don't just go IP - Go IT
Don't just go IP - Go ITDon't just go IP - Go IT
Don't just go IP - Go ITKieran Kunhya
 
STS _ TLF 2014 IDT
STS _ TLF 2014 IDTSTS _ TLF 2014 IDT
STS _ TLF 2014 IDTHank Lydick
 
Internet Protocol Deep-Dive
Internet Protocol Deep-DiveInternet Protocol Deep-Dive
Internet Protocol Deep-DiveGLC Networks
 

Similar to SoC-powered Linux / Linux-powered SoC (20)

MTCNA Intro to routerOS
MTCNA Intro to routerOSMTCNA Intro to routerOS
MTCNA Intro to routerOS
 
MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USB
 
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
 
Mikrotik Hotspot
Mikrotik HotspotMikrotik Hotspot
Mikrotik Hotspot
 
Lcu14 101- coresight overview
Lcu14 101- coresight overviewLcu14 101- coresight overview
Lcu14 101- coresight overview
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
Zabbix for Monitoring
Zabbix for MonitoringZabbix for Monitoring
Zabbix for Monitoring
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
 
HKG15-301: OVS implemented via ODP & vendor SDKs
HKG15-301: OVS implemented via ODP & vendor SDKsHKG15-301: OVS implemented via ODP & vendor SDKs
HKG15-301: OVS implemented via ODP & vendor SDKs
 
Tft touch screen manufacturers
Tft touch screen manufacturersTft touch screen manufacturers
Tft touch screen manufacturers
 
GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~
GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~
GPGPU Accelerates PostgreSQL ~Unlock the power of multi-thousand cores~
 
EOIP Deep Dive
EOIP Deep DiveEOIP Deep Dive
EOIP Deep Dive
 
Intel galileo
Intel galileoIntel galileo
Intel galileo
 
Mikrotik Bridge Deep Dive
Mikrotik Bridge Deep DiveMikrotik Bridge Deep Dive
Mikrotik Bridge Deep Dive
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
 
Don't just go IP - Go IT
Don't just go IP - Go ITDon't just go IP - Go IT
Don't just go IP - Go IT
 
STS _ TLF 2014 IDT
STS _ TLF 2014 IDTSTS _ TLF 2014 IDT
STS _ TLF 2014 IDT
 
Internet Protocol Deep-Dive
Internet Protocol Deep-DiveInternet Protocol Deep-Dive
Internet Protocol Deep-Dive
 

More from Pavel Kurochkin

lm-sensors in embedded systems: from schematics to management from linux
lm-sensors in embedded systems: from schematics to management from linuxlm-sensors in embedded systems: from schematics to management from linux
lm-sensors in embedded systems: from schematics to management from linuxPavel Kurochkin
 
Sama5d3: how to run linux on it
Sama5d3: how to run linux on itSama5d3: how to run linux on it
Sama5d3: how to run linux on itPavel Kurochkin
 
Measuring ethernet traffic parameters
Measuring ethernet traffic parametersMeasuring ethernet traffic parameters
Measuring ethernet traffic parametersPavel Kurochkin
 
Лекция 4: измерения в Е1
Лекция 4: измерения в Е1Лекция 4: измерения в Е1
Лекция 4: измерения в Е1Pavel Kurochkin
 
Лекция 3: оптические сети. Обзор
Лекция 3: оптические сети. ОбзорЛекция 3: оптические сети. Обзор
Лекция 3: оптические сети. ОбзорPavel Kurochkin
 
Лекция 2: Ethernet L1, L2. Обзор
Лекция 2: Ethernet L1, L2. ОбзорЛекция 2: Ethernet L1, L2. Обзор
Лекция 2: Ethernet L1, L2. ОбзорPavel Kurochkin
 
Лекция 1: обзор канала E1
Лекция 1: обзор канала E1Лекция 1: обзор канала E1
Лекция 1: обзор канала E1Pavel Kurochkin
 
Вводная лекция
Вводная лекцияВводная лекция
Вводная лекцияPavel Kurochkin
 

More from Pavel Kurochkin (8)

lm-sensors in embedded systems: from schematics to management from linux
lm-sensors in embedded systems: from schematics to management from linuxlm-sensors in embedded systems: from schematics to management from linux
lm-sensors in embedded systems: from schematics to management from linux
 
Sama5d3: how to run linux on it
Sama5d3: how to run linux on itSama5d3: how to run linux on it
Sama5d3: how to run linux on it
 
Measuring ethernet traffic parameters
Measuring ethernet traffic parametersMeasuring ethernet traffic parameters
Measuring ethernet traffic parameters
 
Лекция 4: измерения в Е1
Лекция 4: измерения в Е1Лекция 4: измерения в Е1
Лекция 4: измерения в Е1
 
Лекция 3: оптические сети. Обзор
Лекция 3: оптические сети. ОбзорЛекция 3: оптические сети. Обзор
Лекция 3: оптические сети. Обзор
 
Лекция 2: Ethernet L1, L2. Обзор
Лекция 2: Ethernet L1, L2. ОбзорЛекция 2: Ethernet L1, L2. Обзор
Лекция 2: Ethernet L1, L2. Обзор
 
Лекция 1: обзор канала E1
Лекция 1: обзор канала E1Лекция 1: обзор канала E1
Лекция 1: обзор канала E1
 
Вводная лекция
Вводная лекцияВводная лекция
Вводная лекция
 

Recently uploaded

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 

Recently uploaded (20)

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 

SoC-powered Linux / Linux-powered SoC

  • 1. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin SoC-powered Linux Benefits of Linux-powered SoC-devices
  • 2. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Presentation plan ● Company profile ● SoC Altera Cyclone V Architecture ● Booting Linux: SPL, U-boot, kernel ● Developing NIC ● Benchmarks ● Troubles 2
  • 3. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin ● 12 years of RnD experience ● Russia, Saint-Petersburg ● Development and production of measurement equipment ● Telecommunication channels verification: E1, Datacom, Ethernet (10/100/GbE/10G/100G), fiber optics ● Network packet analysis and processing at line rate ● From idea to complete to “out of the box” solution ● Linux inside! 3 STC Metrotek STC Metrotek
  • 4. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin System On Chip one chip integrates many components 4
  • 5. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin SoC block diagram 5
  • 6. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Altera SoC = HPS(CPU) + FPGA 6
  • 7. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin FPGA - Field Programmable Gate Array 7
  • 8. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Why use SoC? Old school Modern design CPU FPGAI/F bottleneck or complex PCB CPU FPGA 8
  • 9. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin SoC data flows ● Direct memory access ● Interconnect ● Dedicated HPS-FPGA interfaces 9
  • 10. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin CPU address space 10
  • 11. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin ● Independent HPS and FPGA ● Boot sources: SD, QSPI, etc... ● Independent flexible configuration (HPS or FPGA initiated) ● Dedicated memory for FPGA registers ● High-speed interfaces SoC architecture 11
  • 12. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin CPU boots first 12
  • 13. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin FPGA boots first 13
  • 14. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin HPS and FPGA boots independently 14
  • 15. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Booting Linux ● preloader ● U-boot + environment ● device tree ● Linux kernel ● rootfs 15
  • 16. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin HPS Boot flow 16
  • 17. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Preloader + U-boot Preloader ● DDR initialization ● memtest ● basic synchronization clock setup U-boot ● access to peripheral (SD/USB/Ethernet/i2c/etc..) ● filesystem support (fat/ext2) ● flexible boot configuration (boot from TFTP, RAM, etc...) ● scripting, flexibility ● direct memory access 17
  • 18. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Linux kernel ● github:altera-opensource/linux-socfpga ● v 3.18.0 18
  • 19. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Device tree 19
  • 20. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Booting FPGA ● Load fpga manager module ● Ensure that FPGA has been detected -- file /dev/fpga0 should exist ● Get proper FPGA firmware file -- firmware.rbf ● Load it to FPGA -- cat firmware.rbf > /dev/fpga0 ● Ensure that it has been loaded -- cat /sys/class/fpga/fpga0/status HPS and FPGA ready for data exchange! 20
  • 21. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Moving to practical examples 21
  • 22. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin EthOnd development board Features: ● SoC with 2 ARMv7 Cores and FPGA ● RAM 1GB ● SD-card slot ● 2 x GbE ports ● Shield interface ● USB OTG ● UART console ● Optional PoE ● RTC 22
  • 23. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin EthOnd block diagram 23
  • 24. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin NIC block diagram 24
  • 25. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin NIC Features ● 2 ports ● NAPI support ● frame sizes 64-1518 ● DMA support ● 10/100/1000 Mbps, full duplex ● ethtool support (link speed, link status) ● MDIO support ● low-level timestamping 25
  • 26. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Packet timestamping 26
  • 27. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin NIC Benchmarks ● TCP iperf on 1500 bytes, TCP window size 85K -- 370 Mbit/s ● UDP for different frame sizes: 16 - 377 Mbit/s ● Delay via office switch - 3 us 27
  • 28. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Troubles… ● Hardware MAC (stmmac) did not communicate with FPGA ● Sometimes Qsys generates invalid interconnect ● DDR3: 66 MHz instead of 333 MHz ● i2c controller hangs up ● Linux v3.18 has issue with i2c interrupts ● U-boot does not support ULPI ● Linux 3.12 hangs up with pre-loaded FPGA ● fpga2sdram interface should be configured in U- boot ● UART generates thousands of interrupts in 3.18 28
  • 29. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin ● Single chip ● High-speed interconnect ● Linux kernel ● Flexibility Pros and cons 29 ● CPU frequency cannot be changed at run-time ● High chip temperature ● Drivers are still crude yet ;)
  • 30. STC Metrotek 2015 Pavel Kurochkin, Denis Gabidullin Thank you! 30