vproto

vProto is an advanced extension of regular expressions that allows the specification of a Finite State Machine, including states, behaviors, and transition conditions. This description serves as the basis for generating C++/Rust code tailored for data parsing purposes, offering extremely high performance and convenience for parsing existing protocols as well as defining custom ones.

  • High performance of the generated code (3 times faster than Boost::HTTP and 5–6 times faster when using SSE), so it’s unlikely that you can write code faster by hand.
  • Supports stream processing of data with state preservation, enabling handling of data of any fragmentation (even byte-wise reception), which is crucial for TCP protocol
  • C++98 compatibility mode is available, enabling the generated code to run on embedded platforms, including microcontrollers

vsyn

vSyn - transfer (translator) C language to Verilog. The development of algorithms in the C language is significantly simpler, more compact, and faster than in hardware description languages (Verilog, VHDL, SystemC, etc).

An automated process of transferring C logic to the hardware level is a highly effective approach in implementing complex and large projects on PLDs (Programmable Logic Devices) FPGA:



  • Time savings on development, testing, and debugging (C code is much easier to debug on x86/64)
  • Automated process of forming state machines (Finite State machine)
  • Memory interface compatible with the Memory Interface Generator (LogiCORE IP Core from Xilinx)
  • Minimization of code size and consequently, reduction of errors
  • Ability to not worry about the complexities of Verilog internals
  • Code portability, ability to use a replenishable algorithm library: red-black-tree (std::map)
On this website, you can try out this technology for free and without registration here.

hwdev

These devices were 100% developed by me, including schematic design in Altium Designer, PCB layout, manual soldering of prototypes, and programming of both FPGA and microcontrollers. The development took place at home, outside of working hours, but later some of these devices were sold and went into mass production

tetris

Tetris-3D is one of my first working programs with multiplayer capability. It has a size of 24 kilobytes (developed in assembly) using OpenGL.

Author: Shchekoldin Sergey (Щеколдин Сергей)
shchekoldin@gmail.com