Sandeep Shukla
Sandeep Shukla is an influencer

Kanpur Nagar, Uttar Pradesh, India Contact Info
18K followers 500+ connections

Join to view profile

About

My PhD is on theoretical analysis, complexity analysis and mapping of algorithmic aspects…

Articles by Sandeep

See all articles

Contributions

Activity

Join now to see all activity

Experience & Education

  • Star Union Dai-ichi Life Insurance Company Limited

View Sandeep’s full experience

See their title, tenure and more.

or

By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.

Volunteer Experience

  • Junior Achievement USA Graphic

    Taught Business Economics to high school Economics Classes in San Jose

    Junior Achievement USA

    - 6 months

    Education

Publications

  • Verification of Unit and Dimensional Consistencies in Polychronous Specifications

    2014 IEEE Forum on specification & Design Languages (FDL)

    Cyber physical systems are characterized by continuous interaction between digital control systems and physical systems. To design critical control software that is to be used in control systems, a model-driven correct-by-construction approach is preferable. Modeling languages based on synchronous model of time -- such as Simulink, State Chart, Esterel, Lustre etc., are often used for sequential software synthesis and languages with a polychronous timing model such as Signal, MRICDF…

    Cyber physical systems are characterized by continuous interaction between digital control systems and physical systems. To design critical control software that is to be used in control systems, a model-driven correct-by-construction approach is preferable. Modeling languages based on synchronous model of time -- such as Simulink, State Chart, Esterel, Lustre etc., are often used for sequential software synthesis and languages with a polychronous timing model such as Signal, MRICDF (Multi-Rate Instantaneous Channel-connected Data Flow) etc., are often used for concurrent software synthesis. The interfaces of such software to the real world are through digital signals that are often sampled quantities of physical entities -- such as velocity, acceleration, pressure etc. Standard type systems available in programming or modeling languages assign traditional data types such as float, real etc., to these signals. Modelers might mistakenly connect two signals with the same traditional data types but representing different physical entities leading to critical bugs in the synthesized software. Early detection of such mistakes require enhanced type system and type checking algorithms. In this work, we attempt to extend the type system of the polychronous modeling language MRICDF and propose type inference techniques that consider the physical dimensions and units of the signals along with the data types. We also propose an SMT (Satisfiability Modulo Theories) based verification approach that verifies type consistency and provides invariants under which the type consistency is upheld.

    Other authors
  • A New Multi-threaded Code Synthesis Methodology and Tool for Correct-by-Construction Synthesis from Polychronous Specifications

    2013 IEEE 13th International Conference on Application of Concurrency to System Design (ACSD)

    Embedded software systems respond to multiple events coming from various sources - some temporally regular (ex: periodic sampling of continuous time signals) and some intermittent (ex: interrupts, exception events etc.). Timely response to such events while executing complex computation, might require multi-threaded implementation. For example, overlapping I/O of various types of events, and computation on such events may be delegated to different threads. However, manual programming of…

    Embedded software systems respond to multiple events coming from various sources - some temporally regular (ex: periodic sampling of continuous time signals) and some intermittent (ex: interrupts, exception events etc.). Timely response to such events while executing complex computation, might require multi-threaded implementation. For example, overlapping I/O of various types of events, and computation on such events may be delegated to different threads. However, manual programming of multi-threaded programs is error-prone, and proving correctness is computationally expensive. In order to guarantee safety of such implementations, we believe that a correct-by-construction synthesis of multi-threaded software from formal specification is required. It is also imperative that the multiple threads are capable of making progress asynchronous to each other, only synchronizing when shared data is involved or information requires to be passed from one thread to other. Especially on a multi-core platform, lesser the synchronization between threads, better will be the performance. Also, the ability of the threads to make asynchronous progress, rather than barrier synchronize too often, would allow better real-time schedulability. In this work, we describe our technique for multi-threaded code synthesis from a variant of the polychronous programming language SIGNAL, namely MRICDF. Through a series of experimental benchmarks we show the efficacy of our synthesis technique. Our tool EmCodeSyn which was built originally for sequential code synthesis from MRICDF models has been now extended with multi-threaded code synthesis capability. Our technique first checks the concurrent implementability of the given MRICDF model. For implementable models, we further compute the execution schedule and generate multi-threaded code with appropriate synchronization constructs so that the behavior of the implementation is latency equivalent to that of the original MRICDF model.

    Other authors
    See publication
  • Synthesizing Embedded Software with Safety Wrappers through Polyhedral Analysis in a Polychronous Framework

    Proceedings of the IEEE 2012 Electronic System Level Synthesis Conference(IEEE-ESLsyn), June 2-3, 2012, San Francisco, California, USA

    Polychrony, a model of computation, allows us to statically analyze safety properties from formal specifications and synthesize deterministic software for safety-critical cyber physical systems. Currently, the analysis is performed on the formal specifications through Boolean abstractions. Even though it is a sound abstraction, for more precise analysis we might have to refine the abstraction. Refining the abstraction level from pure Boolean to a theory of Integers can lead to more precise…

    Polychrony, a model of computation, allows us to statically analyze safety properties from formal specifications and synthesize deterministic software for safety-critical cyber physical systems. Currently, the analysis is performed on the formal specifications through Boolean abstractions. Even though it is a sound abstraction, for more precise analysis we might have to refine the abstraction. Refining the abstraction level from pure Boolean to a theory of Integers can lead to more precise decisions. In this paper, we first show how integrating a Satisfiability Modulo Theory (SMT) solver to POLYCHRONY compiler can enhance its decision making capabilities. Further, we show, how a polyhedral analysis library integrated to the compiler, can compute safe operational boundaries, and filter unsafe input combinations to keep the system safe. We enhanced the POLYCHRONY compiler’s ability to make more accurate decisions and to accept and characterize the safe input range for specifications where safety may be violated for a relatively small region of a large input space. The enhancement also allows the user to consider the severity of the violation with respect to entire space of inputs, and either reject a specification or synthesize a wrapped software with guaranteed safe operation.

    Other authors
  • SCGPSim: A fast SystemC simulator on GPUs

    Design Automation Conference (ASP-DAC), 2010 15th Asia and South Pacific

    The main objective of this paper is to speed up the simulation performance of SystemC designs at the RTL abstraction level by exploiting the high degree of parallelism afforded by today's general purpose graphics processors (GPGPUs). Our approach parallelizes SystemC's discrete-event simulation (DES) on GPGPUs by transforming the model of computation of DES into a model of concurrent threads that synchronize as and when necessary. Unlike the cooperative threading model employed in the SystemC…

    The main objective of this paper is to speed up the simulation performance of SystemC designs at the RTL abstraction level by exploiting the high degree of parallelism afforded by today's general purpose graphics processors (GPGPUs). Our approach parallelizes SystemC's discrete-event simulation (DES) on GPGPUs by transforming the model of computation of DES into a model of concurrent threads that synchronize as and when necessary. Unlike the cooperative threading model employed in the SystemC reference implementation, our threading model is capable of executing in parallel on the large number of simple processing units available on GPUs. Our simulation infrastructure is called SCGPSim and it includes a source-to-source (S2S) translator to transform synthesizable SystemC models into parallelly executable programs targeting an NVIDIA GPU. The translator retains the simulation semantics of the original designs by applying semantics preserving transformations. The resulting transformed models mapped onto the massively parallel architecture of GPUs improve simulation efficiency quite substantially. Preliminary experiments with varying-sized examples such as AES, ALU, and FIR have shown simulation speed-ups ranging from 30x to 100x. Considering that our transformations are not yet optimized, we believe that optimizing them will improve the simulation performance even further.

    Other authors
    See publication
  • Model Based Test Generation for Microprocessor Architecture Validation

    IEEE

    Other authors
  • Validating Families of Latency Insensitive Protocols

    IEEE Transactions on Computers

  • Automated Extraction of Structural Information from SystemC-based IP for Validation

    Sixth International Workshop on Microprocessor Test and Verification (MTV'05)

  • XFM :An Incremental Methodology for Developing Formal Models

    ACM Transactions on Design Automation of Electronic Systems (TODAES) Special Issue on Validation of Large Systems. Volume 10, Issue 4, pp. 589-609

  • Accelerating SystemC Simulations using GPUs

    2012 IEEE International High Level Design Validation and Test Workshop (HLDVT)

    Invited Paper

    Abstract: Recent developments in graphics processing unit (GPU) technology has invigorated an interest in using GPUs for accelerating the simulation of SystemC models. SystemC is extensively used for design space exploration, and early performance analysis of hardware systems. SystemC's reference implementation of the simulation kernel supports a single-threaded simulation kernel. However, modern computing platforms offer substantially more compute power by means of…

    Invited Paper

    Abstract: Recent developments in graphics processing unit (GPU) technology has invigorated an interest in using GPUs for accelerating the simulation of SystemC models. SystemC is extensively used for design space exploration, and early performance analysis of hardware systems. SystemC's reference implementation of the simulation kernel supports a single-threaded simulation kernel. However, modern computing platforms offer substantially more compute power by means of multiple central processing units, and multiple co-processors such as GPUs. This has peaked an interest in parallelizing SystemC simulations. Of these, several efforts focus on utilizing the massive parallelism offered by GPUs as an alternate computing platform. In this paper, we present a summary of these recent research efforts that propose using GPUs for accelerating SystemC simulation.

    Other authors
  • Compiling polychronous programs into conditional partial orders for ASIP synthesis

    ACM FormaliSE 2014

    Synthesis of application specific hardware which minimizes area while not sacrificing latency or clock speed is a much researched problem. In most of the past works, the hardware is described structurally in hardware description languages with behaviors attached to structures. Since the structure is manually decided, the architect has to decide whether certain components can be reused without increasing latency. For example, if one can prove that certain behaviors never happen at the same time,…

    Synthesis of application specific hardware which minimizes area while not sacrificing latency or clock speed is a much researched problem. In most of the past works, the hardware is described structurally in hardware description languages with behaviors attached to structures. Since the structure is manually decided, the architect has to decide whether certain components can be reused without increasing latency. For example, if one can prove that certain behaviors never happen at the same time, these behaviors can be mapped to common components, with a simple control state machine determining which behavioral mode the behavior belongs to. Since application specific hardware are used as co-processors for performance boost, and such computations are best described as a data-flow computation, we choose a high level data-flow oriented formal specification language, and use a new semantic model for this specification language, namely conditional partial order graphs. The advantage of our approach is that our specification language MRICDF is graphical, polychronous, has formal semantics, and hence synthesizing its control structure into conditional partial order is a natural fit. Additionally, the specific calculus of constraints in polychronous languages -- namely clock calculus, and associated analysis with Boolean theory of prime implicates, and constraint satisfiability checking with SMT solvers provide us with a natural way of discovering behaviors that belong to disjoint modes, and thereby allow us to reuse components with simple micro-instruction set synthesis. In this paper, we show how MRICDF can be used to formally synthesize such application specific instruction processors.

    Other authors
    See publication
  • Construction of a Microgrid Communication Network

    Proceedings of IEEE PES Conference on Innovative Smart Grid Technologies, 2014.

    The advent of microgrids has made possible a host of applications geared toward the enhancement of the efficiency, reliability, resiliency, and sustainability of an electric power system. With a large penetration of microgrids in a power distribution system, a dedicated communication network infrastructure is needed to coordinate their control actions under various system operating conditions. This paper evaluates the ability of the current wireless communication infrastructure to meet some…

    The advent of microgrids has made possible a host of applications geared toward the enhancement of the efficiency, reliability, resiliency, and sustainability of an electric power system. With a large penetration of microgrids in a power distribution system, a dedicated communication network infrastructure is needed to coordinate their control actions under various system operating conditions. This paper evaluates the ability of the current wireless communication infrastructure to meet some specific requirements and proposes some remedial actions. To this end, we have implemented communications models on the OPNETTM simulation tool and have investigated the impacts of latency and packet losses on the ability of microgrids’ responses to some disturbances in the main grid. We found that the communications infrastructure must implement suitable channel access mechanisms for wireless transmission and must also support differentiated services to accommodate the variety of traffic patterns generated by the microgrids’ control actions. If there are no differentiated services like the AQM, the performance of the controllers degrades

    Other authors

Patents

  • Bottom-up approach for integrating models for software components using contracts

    Issued US 9,477,446

    The disclosure includes a system and method for building an integrated system using a formal language. The method may include designing one or more models for one or more software components to be included in the integrated system. The one or more models may describe one or more requirements for the one or more software components. The method may include assigning one or more contracts written in the formal language to the one or more models. The method may include integrating the one or more…

    The disclosure includes a system and method for building an integrated system using a formal language. The method may include designing one or more models for one or more software components to be included in the integrated system. The one or more models may describe one or more requirements for the one or more software components. The method may include assigning one or more contracts written in the formal language to the one or more models. The method may include integrating the one or more models based on the composition of the one or more contracts to form an integrated model. The integrated model may include each requirement for the one or more software components. The method may include analyzing the one or more contracts and the integrated model to determine whether the one or more contracts include each requirement described by the integrated model.

    Other inventors
    See patent
  • Timing-oriented and architecture-centric system design using contracts

    Issued US 9,459,840

    The method may include designing one or more software models for one or more software components to be included in an embedded system. The method may include collecting information from the one or more requirements, the one or more software components, and the one or more software models. The method may include generating one or more architecture models that describe an execution platform, physical constraints, non-functional constraints, and characteristics of the embedded system based on the…

    The method may include designing one or more software models for one or more software components to be included in an embedded system. The method may include collecting information from the one or more requirements, the one or more software components, and the one or more software models. The method may include generating one or more architecture models that describe an execution platform, physical constraints, non-functional constraints, and characteristics of the embedded system based on the collected information. The method may include determining timing semantics to be satisfied by execution of functions in the embedded system. The method may include generating, by an electronic device, contracts based on the one or more requirements, the one or more software components, the one or more software models, the one or more architecture models, and the timing semantics.

    Other inventors
    • Jean-Pierre Talpin
    See patent

Courses

  • Software Engineering

    -

Projects

  • Probabilistic Model Checking for System Level Power Management

    -

Honors & Awards

  • IEEE Computer Society Distinguished Contributor

    IEEE Computer Society

    The IEEE Computer Society Distinguished Contributor Recognition Program is open to both IEEE CS Members and Affiliates and recognizes those members who have made technical contributions, through either applied or pure computing, to the Computing Profession, Computing Community, and Humanity with a significant portion of those technical contributions made through association with the CS.
    This is a recognition program and should not be confused with the IEEE member grades of Life, Member…

    The IEEE Computer Society Distinguished Contributor Recognition Program is open to both IEEE CS Members and Affiliates and recognizes those members who have made technical contributions, through either applied or pure computing, to the Computing Profession, Computing Community, and Humanity with a significant portion of those technical contributions made through association with the CS.
    This is a recognition program and should not be confused with the IEEE member grades of Life, Member, Senior and Fellow. https://www.computer.org/membership/distinguished-contributors

  • ACM Distiguished Speaker

    ACM

    http://dsp.acm.org/view_lecturer.cfm?lecturer_id=7523

  • Ramanujan Fellow

    Department of Science and Technology, Government of India

    The fellowship is meant for brilliant scientists and engineers from all over the world to take up scientific research positions in India, i.e. for those scientists who want to return to India from abroad. The fellowships are scientist-specific and very selective. The Ramanujan Fellows could work in any of the scientific institutions and universities in the country and they would be eligible for receiving regular research grants through the extramural funding schemes of various S&T agencies of…

    The fellowship is meant for brilliant scientists and engineers from all over the world to take up scientific research positions in India, i.e. for those scientists who want to return to India from abroad. The fellowships are scientist-specific and very selective. The Ramanujan Fellows could work in any of the scientific institutions and universities in the country and they would be eligible for receiving regular research grants through the extramural funding schemes of various S&T agencies of the Government of India.http://serb.gov.in/fellowships.php

  • IEEE Fellow

    IEEE

    for contributions to applied probabilistic model checking for system design

  • ACM Distinguished Scientist

    Association of Computing Machinery (ACM)

    This honor recognizes ACM members with at least 15 years of professional experience who have made a significant contribution to the field of computing, computer science, or information technology.

  • Google Scholar Profile

    Google

    http://scholar.google.com/citations?user=TrmkatYAAAAJ&hl=en

  • Research Gate Profile

    Research Gate

    https://www.researchgate.net/profile/Sandeep_Shukla6/

Languages

  • Bengali

    -

  • Hindi

    -

Organizations

  • Indian Institute of Technology at Kanpur

    Professor

    - Present

    Will be joining from July 2015

Recommendations received

5 people have recommended Sandeep

Join now to view

More activity by Sandeep

View Sandeep’s full profile

  • See who you know in common
  • Get introduced
  • Contact Sandeep directly
Join to view full profile

People also viewed

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Others named Sandeep Shukla in India

Add new skills with these courses