字节跳动FPGA原型工程师-PICO(上海)
社招全职3年以上A97614地点:上海状态:招聘
任职要求
1、计算机软件、电子或通讯相关领域硕士研究生以上学历,3年以上软件固件开发工作经验优先; 2、精通C/C++编程,具备良好的数据结构和算法基础,丰富的嵌入式软件设计经验; 3、熟悉ARM体系结构和Petalinux; 4、熟悉UART/IIC/USB/MIPI/WIFI等接口协议; 5、熟悉多进程和多线程软件架构模型,并基于性能和应用场景进行优化。 加分项: 1、有芯片公司软件固件开发经验优先; 2、有AI视频类项目经验优; 3、有Zync FPGA项目开发经验优先; 4、熟悉Neon、DSP算法加速。
工作职责
1、负责VR/AR类产品Prorotyping方案的设计和研发; 2、完成相关驱动和固件代码的编写和调试; 3、配合硬件、逻辑工程师进行调试测试,高质量完成项目; 4、对固件算法进行性能优化; 5、参与系统问题分析定位和技术攻关; 6、负责相关文档的撰写和整理。
包括英文材料
学历+
C+
https://www.freecodecamp.org/chinese/news/the-c-beginners-handbook/
本手册遵循二八定律。你将在 20% 的时间内学习 80% 的 C 编程语言。
https://www.youtube.com/watch?v=87SH2Cn0s9A
https://www.youtube.com/watch?v=KJgsSFOSQv0
This course will give you a full introduction into all of the core concepts in the C programming language.
https://www.youtube.com/watch?v=PaPN51Mm5qQ
In this complete C programming course, Dr. Charles Severance (aka Dr. Chuck) will help you understand computer architecture and low-level programming with the help of the classic C Programming language book written by Brian Kernighan and Dennis Ritchie.
C+++
https://www.learncpp.com/
LearnCpp.com is a free website devoted to teaching you how to program in modern C++.
https://www.youtube.com/watch?v=ZzaPdXTrSb8
数据结构+
https://www.youtube.com/watch?v=8hly31xKli0
In this course you will learn about algorithms and data structures, two of the fundamental topics in computer science.
https://www.youtube.com/watch?v=B31LgI4Y4DQ
Learn about data structures in this comprehensive course. We will be implementing these data structures in C or C++.
https://www.youtube.com/watch?v=CBYHwZcbD-s
Data Structures and Algorithms full course tutorial java
算法+
https://roadmap.sh/datastructures-and-algorithms
Step by step guide to learn Data Structures and Algorithms in 2025
https://www.hellointerview.com/learn/code
A visual guide to the most important patterns and approaches for the coding interview.
https://www.w3schools.com/dsa/
多线程+
https://liaoxuefeng.com/books/java/threading/basic/index.html
和单线程相比,多线程编程的特点在于:多线程经常需要读写共享数据,并且需要同步。
https://www.youtube.com/watch?v=_uQgGS_VIXM&list=PLsc-VaxfZl4do3Etp_xQ0aQBoC-x5BIgJ
https://www.youtube.com/watch?v=IEEhzQoKtQU
https://www.youtube.com/watch?v=mTGdtC9f4EU&list=PLL8woMHwr36EDxjUoCzboZjedsnhLP1j4
https://www.youtube.com/watch?v=TPVH_coGAQs&list=PLk6CEY9XxSIAeK-EAh3hB4fgNvYkYmghp
https://www.youtube.com/watch?v=xPqnoB2hjjA
This video is an introduction to multithreading in modern C++.
https://www.youtube.com/watch?v=YKBwKy5PrpQ
Rust threading is easy to implement and improves the efficiency of your applications on multi-core systems!
FPGA+
https://nandland.com/fpga-101/
These are the fundamental concepts that are important to understand when designing FPGAs.
Zynq+
[英文] What is Zynq?
https://digilent.com/blog/what-is-zynq/
Zynq is an APSoC – meaning that in addition to integrating most, if not all, components of a computer into a single chip, developers can also take advantage of the FPGA, or field-programmable gate array, technology present within it.
PetaLinux+
https://www.youtube.com/watch?v=60JESutNR1k
Introduction to ZYNQ UltraScale – Design tools and Building Simple Petalinux System
相关职位
社招A188827
1、设计并开发新一代AR/VR/MR设备的视频编解的算法; 2、根据产品需求,定义多媒体编解码相关的软硬件Pipeline架构以及各项指标; 3、根据系统对延时、带宽、功耗要求以及芯片硬件开销,结合整体多媒体管线,对算法进行优化并开发IP的算法原型; 4、配合FPGA团队进行Pipeline IP的原型验证,确定IP的性能指标以及参数范围; 5、与多职能团队或者IP供应商合作进行联合设计和开发。
更新于 2024-12-22
社招A45180
1、与跨职能团队合作,分析MR产品SOC架构需求,定义芯片外部接口、定制IP、内存带宽、互连协议以及功率等相关要求; 2、根据MR产品系统功能以及使用场景,定义SOC内部数据通路控制流程以及相关模式; 3、定义芯片内部软硬件划分,驱动高效的系统软硬件架构,协同优化以满足产品需求; 4、负责功耗和性能分析,权衡SOC设计过程中的取舍,为实现产品要求探索创新且高效的架构方案; 5、推动芯片设计团队或者芯片设计供应商满足SOC要求。
更新于 2024-02-20
社招A101401
1、与跨职能团队合作,分析MR产品显示、相机、视频处理相关的SOC需求(包含接口、定制 IP、内存带宽,功率等相关要求); 2、根据MR产品系统功能以及使用场景,定义SOC内部显示、相机、视频数据通路、控制流程以及相关模式; 3、定义芯片内部多媒体相关软硬件划分,驱动高效的系统硬件/软件架构协同优化以满足产品需求; 4、功耗和性能分析,权衡 SOC 设计过程中的取舍,为实现产品要求探索创新且高效的多媒体架构方案; 5、推动芯片设计团队或者芯片设计供应商满足 SOC 要求。
更新于 2024-05-07