eInfochips PES

eInfochips PES

Website URL:

Q&A on ASIC-FPGA-SoC Design and Solutions

QA on ASIC FPGA SoC

 

1. What is FPGA design?

 

ANS: FPGA stands for field-programmable gate array of programmable logic gates like AND or XOR and RAM blocks to implement digital computation in a best possible time interval. FPGA design is being used in various applications, including industries like Aerospace, Broadcast, Medical, Surveillance, Automotive etc.

 

2. What is FPGA prototyping?

 

ANS: FPGA prototyping referred to a hardware verification and quick software development. It is a technique which verifies functionality of ASICs and SoCs. It is widely used in handling the increased hardware complexity and software validation.

 

3. What are FPGA slices?

 

ANS: FPGA slice is a collection of Configurable Logic blocks (CLB), of which FPGAs are made of. It consist of three components: Flip-flops, Look-up table (LUT) and Multiplexers. These components share connections within the SLICE.

 

4. How does FPGA synthesis works?

 

ANS: FPGA synthesis can be done with a set of tools such as Xilinx Vivado, Altera Quartus, Synopsys FPGA Compiler etc. It follows three basic steps:

 

  1. Compiles and creates a design of the hardware representation of the logic and registers.
  2. Converts the representation of a design to the target hardware without worrying about time because at the same time synthesis tool will try to make the smallest design with best possibilities.
  3. Compares the logic paths in the design with timing optimization.

 

5. What is a logic cell in Xilinx FPGA?

 

ANS: LUT - Look up table is a logic cell in Xilinx FPGA. It is a small memory which is having same functionality just as ROM that can generate 4-input Boolean functions (AND / OR / XOR / NOT / and its combinations)

 

FAQs for IoT Gateway

1. Why gateways are required in an IoT solution?

 

Ans: An IoT gateway bridges the communication gap between devices, sensors, equipment, systems and the cloud. By systematically connecting the cloud, IoT gateway offer local processing and storage, as well as an ability to autonomously control field devices based on data inputs by sensors. IoT gateways also enable customers to securely aggregate, process and filter data for analysis. It helps ensure that the federated data generated by devices and systems can travel securely and safely from the edge to the cloud.  

 

2. What is the biggest challenge in creating an IoT gateway solution?

 

Ans: The biggest challenge lies in enabling interoperability by supporting multiple connectivity sensor protocols, like Z-Wave, ZigBee, BLE, Wi-Fi, BACnet etc. The connected sensors and devices, in an IoT ecosystem, should be able to seamlessly intercommunicate with other devices through the Gateway or send the required data to the cloud.

 

3. What are the key functionalities required in an IoT gateway?

 

Ans: The following functionalities are essential in an IoT gateway solution:

 

  • Support for multiple connectivity protocols
  • Should be scalable, hardware-agnostic and OS-agnostic
  • Should enable computing at the edge by defining data processing rules through the cloud control panel
  • Utilize local storage to provide backup in case of network failure
  • Integrate edge data with your existing enterprise systems or IoT platforms using our API console
  • Manage your entire device infrastructure from a single interface – perform firmware updates, get device health and diagnostics information to enable predictive maintenance
  • Secure the entire communication pipeline by managing encryption, certifications, role authorizations and authentication

 

4. How to secure the IoT Gateway?

 

Ans: Security should be an integral component in any IoT ecosystem. Active and passive network attacks, including device monitoring, eavesdropping, man-in-the middle and jamming are few common examples of attacks.  The need here is to safeguard the IoT assets, through the use of complete IoT device life cycle management controls and a layered security approach.  Layered security should include network security, application security, device security and physical security.  Security strategy should ensure secured connectivity to IoT gateway along with payload encryption, device identity using certificates, and encryption of data at rest and in transit.

 

5. How eInfochips IoT Gateway can help you?

 

Ans: eInfochips has developed an Intelligent Gateway Framework for product and solution companies  to securely connect to the cloud and remotely manage their sensors, devices, and applications. The ready-to-use hardware and platform-agnostic framework empowers companies in various verticals including home and industrial automation, security & surveillance, connected healthcare, precision agriculture, logistics and supply chain, and other related industries to enable edge and fog computing capabilities within their existing frameworks, and accelerate the time-to-market for their connected solutions. Our solution strength areas include:

 

  • IoT Integration services:  End-to-end integration of IoT data with enterprise apps, data stores, BI tools etc. The gateway solution connect to a variety to edge devices with our pre-packaged libraries for Bluetooth, Wifi, ZigBee, Thread, Z-wave and more. We also support communication using industrial automation protocols such as  OPC and DDS with an ability to connect to any cloud storage or analytics platform over MQTT, CoAP, AMQP or XMPP.
  • Rapid prototyping/application development: We support this to help you rapidly realize an end-to-end web and mobile pilot solution to help evaluate the benefits of IoT for your specific needs.
  • Edge computing: Our expertise in edge computing enables IoT solution providers to optimize their computing infrastructure by distributing load between the cloud and edge devices in an intelligent way through our ready-to-use dynamic rule engine or custom solutions.
  • Device/cloud management: Our strong Device Management skillsets and cloud management solutions will manage your entire device infrastructure while providing best-in-class scalability for business growth from thousands to millions of devices.
  • VMS services: We also offer efficient Video/Media management from edges through our unique and proprietary VMS on cloud solution offering.

 

 

FAQs in DevOps

1. How do you define DevOps?

 

Ans: DevOps is a clipped compound term which combines “Development” and “Operations” practices of IT software development, having originated in the mid 2000s among IT professionals looking for efficient and innovative ways to automate and speed up the process of software delivery. As a change agent, DevOps promotes a culture of collaboration and information sharing across the organization, a radical departure from the ‘silos’ of the past.

 

Nowadays, the DevOps cultural movement has spread far and wide among the technical community and can no longer be confined to software development alone. Its scope of adoption has pervaded product engineering services, various devices of ‘Internet-of-Things’ and Cloud-enabled services, with CloudOps as a resulting metonym.

 

DevOps FAQ

 

2. How DevOps in IT differs from DevOps in Internet of Things (IoT)?

 

Ans: The biggest difference is that compared to pure play IT where you have to deal with software codes alone, when applying DevOps to IoT, you also need to take physical components, devices and existing legacy systems into account which together build in an extra layer of complexity in the overall automation process.

 

Then, there are specific challenges during each and every stage of the project, including a fragmented development pipeline comprising very small teams, automated Build-Verification-Test (BVT) plans, greater usage of legacy systems, non-unified release cadence and conversion of the entire production environment to a singular code (“environment as a code”).

 

For more information on this subject, we highly recommend that you check out this white paper written by eInfochips subject matter experts, titled “DevOps in the Age of Connected Devices”.

 

3. Why is it that DevOps can be so easily extended to the world of product engineering services?

 

Ans: The electronic and industrial devices and intelligent gadgets commonly seen in IoT era operate based on the software running inside them producing advanced business intelligence (BI). This software has to be managed, tested and updated frequently, and in real time. Also, there are physically devices connected to each other, which may include GPS, cameras, accelerometers, energy meters, medical devices, machine sensors and so much more. DevOps is the only methodology available right now which can help prepare for real time failure scenarios with the use of simulators, virtual machines and remote monitoring and updates of firmware.

 

4. In which industries can you find DevOps organizations?

 

Ans: DevOps has been a great disruptor in practically every industry that depends on software delivery, and other application delivery endpoints including diverse devices, web, and mobile services.

 

Some of the industries where eInfochips has direct, proven experience in enabling DevOps services include:

 

 

5. What is the role of QA in DevOps? Where exactly does QA fit in?

 

Ans: QA is a very important step in any software/product delivery function. However, in a DevOps oriented work culture, QA is not seen separately as it is very much a part of the overall development-operations environment. In a traditional QA focused organization, the main endeavor of quality assurance teams is to find bugs while in DevOps organizations, the responsibility of quality assurance is not limited to that but to prevent them from occurring in the first place. This approach helps in an environment where there is a need for newer releases every few minutes or hours.

 

6. Can DevOps be helpful in Remote Device Management (RDM)?

 

Ans: Indeed it is. DevOps is the most efficient way to realize the vision of IoT because as a methodology, it supports bulk operations on many devices simultaneously. 

 

7. What are the issues facing development teams in DevOps?

 

Ans: Development teams adopting DevOps have to overcome challenges mainly due to their existing business environments comprising organizational silos which are a major impediment to the success of DevOps. The biggest problem lies in prioritizing the importance of the products, projects and applications for which monitoring and deployment has to be performed at multiple ends. In order to tackle these issues, DevOps streamlines automation processes to achieve business agility. This helps in delivering a product with total commitment and achieve better quality standards.

 

8. How to measure DevOps?

 

Ans: DevOps can be measured according to the following mentioned categories:

 

  • Deployment frequency: Direct and indirect measure of response time, team efficiency and capabilities, and DevOps tools evaluation and effectiveness.
  • Mean time to recover (MTTR): It is a metric which stands for time to recover from a given failure. It measures both team capability and the rate of failures.
  • Change lead time: The time elapsed from first code sent to operational teams to its deployment at customer end which defines the complexity of the code and the team capabilities of developers.
  • Change failure rate: The rate of frequent deployments across multiple endpoints on everyday basis to a benchmarked value.

 

9. How to achieve Continuous Delivery (CD) in DevOps without downtime?

 

Ans: It is possible to achieve continuous delivery with zero downtime for DevOps using any of the following techniques:

 

  • A/B switch
  • Software load balancers
  • Delaying the port binding

 

10. What is TOSCA in DevOps?

 

Ans: TOSCA stands for Topology and Orchestration Specification for Cloud Applications. It deals with a missing piece in continuous testing hosted on cloud applications and services. The aims of TOSCA include a reduction in escaped bugs, reducing the cost of rework and gaining faster feedback cycle.

 

11. What is DevOps Scrum methodology ?

 

Ans: DevOps scrum methodology is a method of scrum which uses standard DevOps techniques to improve overall agility in a given business. It's a more thoughtful approach which focuses on monitoring operational teams, QA and product teams in a cycle. It’s an agile development framework which includes multiple scrum features like product owner, web, mobile and QA which forming a scrum of scrum to deliver a product feature to customer.

 

12. What are the top 5 challenges of DevOps implementation in a product environment?

 

Ans:  Some of the key challenges while adopting DevOps for Product Development include

 

  1. Complex and fragmented development pipeline: Unlike pure-play IT, it is very challenging to streamline the team composition and workflow  across multiple application delivery end points, including web, mobile, and devices.
  2. Treating the “Environment” as a code: Product Development would require virtualization of multiple associated devices along with server infrastructure. The concept of ‘Infrastructure as code’ in IT needs to be extended towards offering complete ‘Environment as code’.
  3. Ensuring product pipeline: With variety of devices and applications, it is very challenging to ensure product delivery to multiple customers (customization & enhancement) and varied market segments (Low, mid, & high). It requires multiple custom production environment that is difficult to reproduce and maintain at development stage.
  4. Support to Legacy devices and solutions: Product along with cloud infrastructure brings in requirement for managing, updating, and maintaining existing devices on field, along with newly added devices, resulting in increased variations and complexity for Devops.
  5. Release Cadence: Developing a unified release plan becomes a challenge with multiple solution components, including firmware, web app, mobile app, and pc app.

 

13. What are the various components in DevOps implementation?

 

Ans: A typical DevOps workflow will include:

 

  • Continuous integration:
    1. Integration of multiple pipelines (Device, Web and mobile) and prepare main and customized builds.
    2. Configuration and Automation of the environment setup
    3. Auto triggering of alerts and reports
  • Continuous testing:
    1. Virtualization/Simulation
    2. Developing and triggering test script automation with simulation and physical devices
  • Continuous delivery:
    1. Auto Build Deployment on devices and sensors
    2. Rollback management on the live environment, and generating automated alerts and reports on failure scenarios and performance issues.
  • Continuous monitoring:
    1. It includes monitoring and automated troubleshooting of production and test environment, including device health.
    2. An automated alert mechanism

 

14. What are the benefits that an organization can get with Devops transformation?

 

Ans: Key benefits for an organization moving to DevOps are:

 

  1. Reduced time-to-value / Faster time-to-market:  Improved agility in product development
  2. Collaboration: Overcoming from Silos culture and opting for more collaboration and efficiency with different working departments.
  3. Customer Delight: Faster releases, improved agility & quality, and customized builds enables quicker resolution of customer requests.
  4. Operational Efficiency: The ability to scale faster helps in Opex/Capex optimization
  5. Cost Savings: High-scale automation enables to control remotely, reduce the outages, and eliminates product recalls. 

 

15. What are the key business metrics required to measure DevOps success?

 

Ans: ROI / Profitability is useful for both engineering or business owner to assess on the level of collaboration between Development and Operation teams, the effectiveness of processes followed and the impact of the technologies used. Product investment and running cost metrics will give a measure on the impact of profitability.

 

Metrics like “Cycle Time” impacts incremental sales and customer satisfaction. Cycle time is in-turn derived from the matrices like the number of product features delivered, sprint velocity, and release planning. The lower the Cycle Time, more features can be pushed into the product and faster the product can hit the market.  It also results in potential incremental revenue in terms of the value brought by reducing the cycle time.

 

16. How is build verification testing process implemented in DevOps?

 

Ans:  Automated Build Verification Test (BVT) – BVT is focused on delivering the highest quality products, on time. BVT in agile-DevOps methodologies plays an important role in which QA team runs a set of pre-defined test cases for each new build to ensure that they are a stable build for further testing. These pre-defined test cases are for core functionality so that the product’s core functionality is not broken, with further eligibility to release this build to QA team for a thorough testing. You can read in detail about the automated BVT process here: https://goo.gl/zdKC5K 

 

DevOps in IoT: Creating a Connected Future

devops in iot creating a connected future

 

The growing adoption of Internet of Things is making enterprises and consumers alike excited about the prospect of a connected future.  IoT devices happen to have a life-cycle beyond deployment, as each one is essential to the proper functioning of a larger, connected ecosystem comprising many other devices. Think of a large number of self-driven cars hitting the road simultaneously, eventually taking over to become the majority of the traffic. If only one goes down during transit, the gridlock that would ensue is going to be of catastrophic proportions.

 

Clearly, the above example suggests that the biggest prerequisite in the development of an IoT solution is the ability to provide for continuous feedback and value improvement to ensure that the final offering is free from defects or problems running into future. This is where DevOps methodology can play a very important role.

 

Why DevOps in IoT

Most organizations already employ agile technologies and continuous build and deployment for software in place. As software release cycles get shorter, the same can be expected from the corresponding devices. DevOps, in IT, has been widely praised for its ability to simplify code, ensure high quality software with greater automation coverage and highly reduced time-to-market.

 

The same advantages of DevOps can be further extended to the world of real IoT devices. The parallels are definitely there even when you’re dealing with not just code, but actual IoT devices. For example, the culture of collaboration and information sharing which characterize DevOps can be very effective in bringing more synergy into the business processes, meeting release timelines and identifying errors/defects in real time.

 

The other case to be made for DevOps in IoT of course is the fact that with the ability to constantly update devices and features, businesses are afforded new opportunities for business and innovation. The bottom-line impact for product engineering businesses that implement DevOps methodology presents a very strong case for DevOps.

 

A truly connected world – a dream or a nightmare?

The question that comes to mind is if DevOps in IoT is as inevitable as it sounds and if it offers such a huge competitive advantage then why hasn’t it already been adopted more widely?

 

The reason very simply is that there are a lot of inherent differences in instituting DevOps in IT as opposed to in IoT. Check out this white paper to find out more. The challenges faced by IoT companies though can be mitigated by having the willingness to embrace the change as well as putting into place the right technology.

 

The key to making sure that applied DevOps methodology doesn’t end up being a nightmare situation for an IoT company is to ensure that DevOps is not force-fitted into the company. Every environment in IoT is unique and has its own unique DevOps solution.

 

It is important to remember that DevOps is not simply an amalgamation of Development and Operations.  It is a cultural paradigm shift towards working collaborative and leaner solutions. IoT on the other hand is about people. Connecting devices, processes, people and things to create the ultimate consumer experience. Both are ultimately about people and together can create a truly connected world as long as flexibility and scalability are taken into account.

 

To know more about DevOps in IoT and about how eInfochips can help you find your custom DevOps fit, watch this video or email us directly at This email address is being protected from spambots. You need JavaScript enabled to view it.

Subscribe to this RSS feed