204 research outputs found

    EKKO: an open-source RISC-V soft-core microcontroller

    Get PDF
    Dissertação de mestrado em Engenharia Eletrónica Industrial e Computadores (especialização em Sistemas Embebidos e Computadores)Com o surgimento da Internet das Coisas (IoT em inglês) nos últimos anos, o número de “coisas” conectadas está a crescer a um ritmo bastante rápido. Estes dispositivos tornaram-se rapidamente parte do nosso dia a dia e já podem ser encontrados nos mais diversos domínios de aplicação, tais como, telecomunicações, saúde, agricultura, e automação industrial. Devido a este crescimento exponencial, a demanda por sistemas embebidos é cada vez maior, trazendo assim diversos desafios no seu desenvolvimento. De todos os desafios, o time-to-market e os custos de desenvolvimento são de inegável importância, logo, a escolha de uma plataforma de desenvolvimento adequada é essencial no desenho destes sistemas. Devido a este novo paradigma, o grupo de investigação da Universidade do Minho onde esta dissertação se insere tem desenvolvido aplicações neste domínio. No entanto, as atuais plataformas de desenvolvimento utilizadas são complexas, têm custos associados e são de código fechado. Por estas razões, o grupo de investigação tem interesse em ter a sua própria plataforma de desenvolvimento. De modo a solucionar os problemas enumerados acima, esta dissertação tem como objetivo desenvolver uma plataforma de desenvolvimento tanto para hardware como para software. A plataforma deve ser simples de utilizar e open-source, reduzindo assim os custos e a tornando a gestão de licenças mais simples. Para além disto, o facto de o sistema ser de código aberto faz também com que este possa ser facilmente estendido e customizado de acordo com os requisitos da aplicação. Neste sentido, esta dissertação apresenta um soft-core microcontroller, o qual contem um processador RISC-V, uma RAM, uma unidade de depuração, um temporizador, um periférico I2C e um barra mento AXI. Em adição, este contem também um kit de desenvolvimento de software (SDK em inglês), o qual inclui um depurador, a opção de utilizar o sistema operativo Azure RTOS ThreadX, e outras ferramentas importantes, tornando o ciclo de desenvolvimento mais fácil, rápido e seguro.With the advent of the Internet of Things (IoT) in most recent years, the number of connected “things” is increasing quickly. These devices rapidly became part of our daily lives and can be found in the most different applications domains, such as telecommunications, health care, agriculture and industrial automation. With this exponential growth, the demand for embedded devices is increasing, bringing several challenges to the development of these systems. From these challenges, the time-to-market and development costs are undeniable extremely important. Thus, choosing a suitable development platform is essential when designing an embedded system. Due to this new paradigm, the University of Minho research group where this dissertation fits has been developing applications in this domain. However, the current development platforms are complex, have associated costs and are closed-source. For these reasons, the research group has interesting in having its development platform. To solve these problems, this dissertation aims to build a development platform for both hardware and software. The platform must be simple and open-source, reducing development costs and simplifying license management. Besides, due to its open nature, it will also be easier to extend and modify the system according to the application’s needs. In this context, this dissertation presents EKKO, an open-source soft-core microcontroller that contains a RISC-V core, an on-chip RAM, a debug unit, a timer and an I2C peripheral, and an AXI bus. In addition, it also contains a Software Development Kit (SDK), which includes a debugger, the option to use Azure RTOS ThreadX, and other crucial tools, turning the development cycle more accessible, faster and safer

    Practical English Course for Engineering Students

    Get PDF
    Представляет собой систематизированный практический курс английского языка, целью которого является совершенствование навыков, а также развитие умений чтения и понимания англоязычной научно-технической литературы во взаимосвязи с другими видами речевой деятельности: говорением, аудированием и письмом. Состоит из четырех модулей: Electronics; Telecommunications; Information Technologies; Artificial Intelligence. Разработанная на основе модульного подхода структура, организация и изложение учебного материала позволяют использовать пособие как для аудиторной, так и для самостоятельной работы. Предназначено для студентов I ступени высшего образования, изучающих учебную дисциплину «Иностранный язык». Может быть полезно широкому кругу читателей, желающих совершенствовать навыки и развивать умения чтения и понимания англоязычной научно-технической литературы

    SISTEM INFORMASI MANAJEMEN

    Get PDF

    Automated Software Transplantation

    Get PDF
    Automated program repair has excited researchers for more than a decade, yet it has yet to find full scale deployment in industry. We report our experience with SAPFIX: the first deployment of automated end-to-end fault fixing, from test case design through to deployed repairs in production code. We have used SAPFIX at Facebook to repair 6 production systems, each consisting of tens of millions of lines of code, and which are collectively used by hundreds of millions of people worldwide. In its first three months of operation, SAPFIX produced 55 repair candidates for 57 crashes reported to SAPFIX, of which 27 have been deem as correct by developers and 14 have been landed into production automatically by SAPFIX. SAPFIX has thus demonstrated the potential of the search-based repair research agenda by deploying, to hundreds of millions of users worldwide, software systems that have been automatically tested and repaired. Automated software transplantation (autotransplantation) is a form of automated software engineering, where we use search based software engineering to be able to automatically move a functionality of interest from a ‘donor‘ program that implements it into a ‘host‘ program that lacks it. Autotransplantation is a kind of automated program repair where we repair the ‘host‘ program by augmenting it with the missing functionality. Automated software transplantation would open many exciting avenues for software development: suppose we could autotransplant code from one system into another, entirely unrelated, system, potentially written in a different programming language. Being able to do so might greatly enhance the software engineering practice, while reducing the costs. Automated software transplantation manifests in two different flavors: monolingual, when the languages of the host and donor programs is the same, or multilingual when the languages differ. This thesis introduces a theory of automated software transplantation, and two algorithms implemented in two tools that achieve this: µSCALPEL for monolingual software transplantation and τSCALPEL for multilingual software transplantation. Leveraging lightweight annotation, program analysis identifies an organ (interesting behavior to transplant); testing validates that the organ exhibits the desired behavior during its extraction and after its implantation into a host. We report encouraging results: in 14 of 17 monolingual transplantation experiments involving 6 donors and 4 hosts, popular real-world systems, we successfully autotransplanted 6 new functionalities; and in 10 out of 10 multlingual transplantation experiments involving 10 donors and 10 hosts, popular real-world systems written in 4 different programming languages, we successfully autotransplanted 10 new functionalities. That is, we have passed all the test suites that validates the new functionalities behaviour and the fact that the initial program behaviour is preserved. Additionally, we have manually checked the behaviour exercised by the organ. Autotransplantation is also very useful: in just 26 hours computation time we successfully autotransplanted the H.264 video encoding functionality from the x264 system to the VLC media player, a task that is currently done manually by the developers of VLC, since 12 years ago. We autotransplanted call graph generation and indentation for C programs into Kate, (a popular KDE based test editor used as an IDE by a lot of C developers) two features currently missing from Kate, but requested by the users of Kate. Autotransplantation is also efficient: the total runtime across 15 monolingual transplants is 5 hours and a half; the total runtime across 10 multilingual transplants is 33 hours

    Framework to Develop Ada Apps with LEGO Sensors/Actuators in Arduino

    Get PDF
    RESUMEN: El progreso tecnológico ha permitido la globalización de la robótica en todos los aspectos de nuestra vida. Hoy en día es un ámbito ampliamente utilizado tanto a nivel personal, como industrial y últimamente con una gran importancia en el aspecto académico. Es el interés en el avance de la robótica el que ha motivado a la realización de este proyecto, teniendo como objetivo elaborar una plataforma de desarrollo de aplicaciones Ada para sensores y actuadores LEGO. Esta plataforma estará enfocada hacia un nivel educativo, permitiendo de ese modo su uso a docentes y alumnos en futuras prácticas de aplicaciones concurrentes del grado de informática de la Universidad de Cantabria. LEGO, en colaboración con ROBOTIX, dispone de una línea de robótica denominada Mindstorm. Dicha plataforma dispone de numerosos sensores y actuadores con los que se pueden realizar una amplia variedad de proyectos. Además, otra de la característica que presenta esta serie es la facilidad de uso así como el precio ajustado de sus dispositivos, permitiendo su alcance a todo tipo de público. Para el desarrollo del proyecto se hará uso del microcontrolador Arduino Uno junto al escudo EVShield, el cuál, permite la conexión entre la placa y los sensores y actuadores LEGO. Debido a que Arduino no permite el uso de aplicaciones concurrentes se usará el escudo, previamente nombrado, junto al sistema operativo M2O2. Se trata de un sistema operativo en tiempo real que permite ejecutar aplicaciones multitarea escritas utilizando el lenguaje Ada. El escudo EVShield dispone de una librería donde quedan definidas las funcionalidades de la plataforma. Para conseguir su correcto funcionamiento sobre el sistema operativo M2OS se ha realizado una adaptación de esta creando conectores (bindings). Como comprobación final de la eficacia de la plataforma, se han desarrollado una serie de demostradores con el objetivo de obtener casos prácticos, y así demostrar el potencial de la plataforma.ABSTRACT: The develop of technologies has allow the globalization of robotics in day to day of humans. Nowadays, robots are highly use both on a personal and industrial way, and lately, also with a great value in education. The goal of this project is to build a framework to develop Ada apps with LEGO sensors and actuators in Arduino. This framework will be focus to be use by students and teachers developing concurrents apps for the Informatics Engineering degree of the University of Cantabria. LEGO, in collaboration with ROBOTIX, has develop a robotics line named MindStorm in which we can found sensors and actuators that allow users to do lots of different projects. Also, this serie, focus the ease of use and a cheap price that everyone can afford. To develop the project, we will use the Arduino Uno board with EVShield shield, which is needed to connect the LEGO sensors and actuators to the micro controller. Also, due to the fact that Arduino does not allow the develop of real time apps, we will use the multitask operating system M2OS. M2OS is a real time operating system that allow the execution of multitask apps in Ada language. EVShield shield provides a library where the functionality of the controller is defined. To achieve the goal of executing Ada apps with the LEGO sensors, I had generated bindings. To finish with, some demos has been develop. Those demos shows the potential that this platform has. Also, they can help like as a guidebook for students and teachers for their projects.Grado en Ingeniería Informátic

    2021-2022 University of Nebraska at Omaha Catalog

    Get PDF
    Located in one of America’s best cities to live, work and learn, the University of Nebraska at Omaha (UNO) is Nebraska’s premier metropolitan university. With more than 15,000 students enrolled in 200-plus programs of study, UNO is recognized nationally for its online education, graduate education, military friendliness, and community engagement efforts. Founded in 1908, UNO has served learners of all backgrounds for more than 100 years and is dedicated to another century of excellence both in the classroom and in the communit

    University of Nebraska at Omaha 2020-2021 Course Catalog

    Get PDF
    Located in one of America’s best cities to live, work and learn, the University of Nebraska at Omaha (UNO) is Nebraska’s premier metropolitan university. With more than 15,000 students enrolled in 200-plus programs of study, UNO is recognized nationally for its online education, graduate education, military friendliness, and community engagement efforts. Founded in 1908, UNO has served learners of all backgrounds for more than 100 years and is dedicated to another century of excellence both in the classroom and in the communit
    corecore