Menu

Dhokar WASSIM

TUNIS

En résumé

Engineer validation of the family of microcontroller
STM32 in STMicroelectronics using a platform FPGA.

- C/C++ programming language
- STL C++
- C++11 and C++14 programming
- Embedded linux
- STM32 microcontroller knowledge
- ARM processor strong knowledge(M0/M4/M7/M3 and cortex A7 ).
- Altera FPGA
- DSP, networking TCP/IP protocol

Mes compétences :
VHDL,Embeded C,Cortex ARM M-3,M-4,M-0+
Microcontrollers,STM32F0,F2,F4,L0
Microsoft Word
OrCAD
C Programming Language
Motor Controllers
ModelSim
Microsoft Windows
Microsoft PowerPoint
Microsoft Office
Microsoft Excel
Microsoft Access
Matlab
Maple
Embedded C
Electronic Systems
C++

Entreprises

  • STmicroelectronics - Engineering software designer

    maintenant
  • STMicroelectronics - Engineering software designer

    2012 - maintenant Main Projects done on ST Tunis
    1- Description of current job:
    In fact we are an FPGA platform(modified FPGA with other integrated circuit) to emulate the functionality of the microcontroller, I get the FPGA Netlist from the person that adapt the RTL release with this platform and I start programming drivers, firmware and then tests to stress the different IP existing inside the microcontroller(RTC, timers, ADC….).
    The main goal is to make everything working as described on the specification document of each IP, and then check the soc implementation(internal connection between different IP, for example timer can trigger the conversion of ADC so I check if is it the case or not by developing an application to test that….).
    If there is a bug found during validation and tests it will be reported and we start an investigation to localize the source of the problem (if is it and FPGA or RTL issue), after fixing the problem I check again the fix.
    2- Main projects :
    I worked on different STM32 families like STM32F4, STM32F0, STM32F2, STM32F3, STM32L0, and STM32L1.
    STM32F4: it was my first project; in this project I validate two graphical IP (LCDTFT and DMA2D).
    • DMA2D: it is used to manipulate the transfer on burst mode of stored image in format RGB(color format) and make same changes into the format during transfer(for example from indirect color to direct color),using DMA2D will accelerate the transfer of data image(there is no need to use CPU)and make modification during transfer
    • LCDTFT: it is a controller LCDTFT used to display picture into LCDTFT glass, it support all RGB direct color format (RGB565, ARGB8888, ARGB4444…).
    STM32F0 128K: it is a sub family of STM32F0 but with a flash more bigger, in this project i worked on different IP com like I2C, USART, also I worked in IP system like SRAM and flash and analog IP like ADC:
    • USART: transmission and reception with 8 and 9 bit using different baudrate (2400, 4800, 9600…), different clock source, 1/2 stop bit, transmission mode using polling and DMA, reception with polling and DMA.
    • FASH: sector erase, programming by byte/half word/word and double word, write protection, read out protection.
    • SRAM: read write by 8/16/32 bits
    • ADC: different mode of conversion (regular and injected),scan mode(more than 1 channel is converted),store converted data by interrupt/polling and transfer DMA, check internal connection with others IP like Timers
    • Timers: Output Compare, PWM mode, Input Capture.
    • RTC: Calendar, Tamper event, Periodic Wake up, RTC alarm, Digital calibration.
    STM32F3: In this product I validate many P that I have already described but there is a new IP which is HR timer:
    • High resolution timer: PWM signal with very high step resolution (counter working with 144x32 MHZ as frequency), master and 5 slave offers a very big number triggers and internal connection with others IP, analog part is composed f 1 block DLL and 10 blocks Delay (one block delay for each output to have the possibility to generate the high resolution PWM signal in each output.
    STM32L0: It is a low power microcontroller product which uses the Cortex M0+, it is dedicated for the low power energy application, and from the interesting IP that I validate are LPUART and LPtimer:
    • LPtimer: it a timer that has a counter but with different clocks sources (some clock can still working in standby and stop mode) which offer the possibility for this timer to still working in low power modes, moreover it can wake p the system from those low power mode using output compare event, Encoding mode feature, Counting ode.

    • LPUART: UART that can work in low power mode, 7/8 and 9 bits mode of transfer, transmitter and receiver mode, it can work with a very low Baudrate value (like 300, 600, and 1200).
    There are anothers Products but there are a confidential products, in those products I worked on some interesting IP like USB_OTG_FS (OTG full speed) and OTG_HS (high speed), SDIO:
    • SDIO: validation of SDIO host to communicate with SD card and MMC card:
    Block, Multiblock read/write, erase, 1/4 bits transfer mode for SDcard communication,1/4/8 bit transfer mode communication for MMC card, DMA/polling and interrupt transfer.
    • OTG_FS: usb otg full speed, in the validation I used a HID application (device mode HID class) as mouse controller.
    I controlled the external PHY to make the pull-up on D+ transceiver of the USB active (the communication with external phy is done through the integrated I2C on the OTG controller)

    • OTG_HS: I used the same application as the OTG_FS (device mode HID class) but the external phy is an ULPI phy so the control of this phy is different, I had also to make a communication with this external through a data and control bus (using UTMI+ integrated interface on TG core) and then to put the pull-up on the D+ active and then the device can be detected by the host and get the application working correctly.
  • STMicroelectronics - Embedded software engineer

    2012 - maintenant

Formations

  • National Engineering School Of Sousse (ENISo) (Sousse)

    Sousse 2008 - 2011 Diploma

Réseau

Annuaire des membres :