First Name Patrick
Last Name Lehmann



Skype ID Paebbels

Organization PLC2 GmbH
Location Freiburg
Region Baden-Würtemberg
Country Germany
Status Update

Edit personal data

Who am I?

After a basic education in computer science, I specialized in computer engineering, especially in FPGA designing with
Xilinx ISE, Xilinx Vivado and Altera Quartus-II as well in simulation and verification of such implemented designs.
While studding in the master program, I got involved in giving lectures and labs on hardware design, too.

My first big project was a streaming optimized controller for the Serial-ATA protocol. One major goal of this controller
was to be platform independent in means of FPGA device, FPGA family, FPGA vendor and even tool chain vendor
independability. The second project was a Gigabit-Ethernet stack for UDP/IPv4/IPv6, which had the same goals as before.

My major commitment now focuses on streaming optimized and platform independent hardware modules, which are
provided open source on GitHub, named PoC -Library. A second commitment is my PicoBlaze -Library, an extension to
the PicoBlaze processor written by Ken Chapman. This library provides a System-on-Chip ecosystem for the PicoBlaze.

My Links

Proposals for the next VHDL revision (VHDL-2020):

  • Drived Types
    • Derived integer types (all scalar types?)
    • Derived enumerations
    • Derived records
    • Derived protected types
  • Records with discriminants
  • Reflection API
    • Create and assign values at runtime
  • Accessing Record elements (LCS 069)
  • Map functions
  • Signal map aspect (LCS 070a)
  • Operations on integers (power of 2 integers)
  • User defined attributes
  • Deferred
    • Shared Variables
    • Signals
  • Selectable Architecture
  • Protected type initialization
  • Allow work in context
  • Hierachical names
  • Slice multi dimensional arrays
  • Create range shorthand
  • State machine language


LCS written for VHDL-2017:

  1. Improved file API
  2. Improved directory API
  3. Sequential deklarative regions - for if, case, loop statements
  4. Allow Access Types to Protected Types and Composites of Protected Types
  5. Report Calling Path
  6. New attributes for scalar types
  7. New attributes - ='index=
  8. New attributes - ='designated_subtype=
  9. Garbage Collection
  10. Reflection API
  11. Interface Construct and Port Mode Configurations
  12. Interface Construct and Port Mode Configurations - ='converse=
  13. API for Assert
  14. Improved Type Generics
  15. Ordering of any scalar array type
  16. Bidirectional Connections
  17. Function Knows Vektor Size
  18. Extended Ranges
  19. ISAC 03 - Signatures Required in Association Lists
  20. Updating reference IEEE Standards



My Private Pages

My Personal Preferences

  • Preference for the editor, default is the WYSIWYG editor. The options are raw, wysiwyg:
    • Set EDITMETHOD = raw

  • Show tool-tip topic info on mouse-over of WikiWord links, on or off:

  • More preferences TWiki has system wide preferences settings defined in TWikiPreferences. You can customize preferences settings to your needs: To overload a system setting, (1) do a "raw view" on TWikiPreferences, (2) copy a Set VARIABLE = value bullet, (3) do a "raw edit" of your user profile page, (4) add the bullet to the bullet list above, and (5) customize the value as needed. Make sure the settings render as real bullets (in "raw edit", a bullet requires 3 or 6 spaces before the asterisk).

Related Topics

Topic revision: r9 - 2017-06-08 - 14:38:37 - PatrickLehmann
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback