Binutils is a huge piece of code and new users can often feel lost and out of their depth when navigating it alone. To help ease the shock, in this post we’ll look at the very simplest step of adding a new basic instruction to an already defined extension and how to add a corresponding GNU Assembler (GAS) test.
While the examples and files given are all RISC-V specific, the information is transferable to other architecture ports, however tables and structures may differ. More information can be found through the binutils project page.
The accuracy of facial recognition has improved dramatically over the past five years. Advances in both hardware and software have led this technology to the cusp of becoming an everyday part of daily life.
It has the potential to bring many practical benefits. However, it is surrounded by accusations of inaccuracy, bias against ethnic groups and has the potential for flagrant abuse by both corporations and governments.
This post provides a basic introduction to the technology, the controversies which surround the use of facial recognition. It then explores what role open source software and transparent data sets can play in helping people understand the technology.
Many open-source projects target existing, commercial hardware without official support from the hardware vendor. Some of the most famous examples include Linux and the GCC compiler; which all started as third party projects.
These days both of these projects see significant support from large hardware companies and are used as the official tooling for many widely sold products. Both now see significant first-party contributions from hardware vendors.
Over the last three years, I have been part of the community developing open source tooling for field-programmable gate arrays (FPGAs). These are programmable logic chips with great potential for “post Moore’s law” reconfigurable computing with many promising applications from consumer devices to datacentres.
In general, FPGA companies have not published the low-level details of the devices – unlike CPUs, where the instruction set is almost always public. The expectation is that everyone uses the closed-source vendor-specific toolchain provided.
As a result, to develop a complete open-source flow from design to device programming for most FPGAs, the low-level “bitstream” details must be documented by creating a large number of designs using the vendor-provided tools and examining the output. Claire Wolf did this for the Lattice iCE40 FPGAs five years ago in Project Icestorm. Subsequently, I created open-source documentation for their larger ECP5 FPGAs.
In both cases, combined with the low cost and simplicity of these Lattice parts, these projects have led to popular open-source flows for both devices. From this has sprung a number of open source development boards such as the myStormBlackIce, icebreaker and ULX3S.
Vendors are now acknowledging the importance of open source
Whilst downloading a newly released Lattice SDK, I found there was a new clause in the license agreement prohibiting this bitstream documentation. Fortunately, this SDK doesn’t directly affect any of the currently supported devices, but it would have become problematic if all their tools sport this license in the future:
e. Licensee shall not distribute, copy, transfer, lend, incorporate, modify, use or sublicense the Software or any Modules for any purpose except as expressly provided herein or as otherwise permitted under relevant law, or in advance by Lattice in writing. In particular, no right is granted hereunder … or (3) for reverse engineering a bit stream format or other signaling protocol of any Lattice Semiconductor Corporation programmable logic device.
Thanks to lobbying from the community, it is great to see that Lattice has shown commitment to open source by promptly removing the clause after being contacted about it, going as far as to publish a message of appreciation for the open-source community on Twitter:
Thanks for pointing out a new bitstream usage restriction in the Lattice Propel license. It is not our intent to hinder open source tools. See https://bit.ly/3eUM3OD re an updated license. We are excited with the open source community’s FPGA achievements and their potential.
This is a risk that Lattice has taken, but it is one that resonates well with the open-source toolchain developers and will hopefully yield good results for them in the future. It also shows the power of a strong open source community to achieve good results from companies and the growing awareness for the open source.
I hope that as time progresses we see more support for open source tools from FPGA vendors, perhaps even reaching a similar point to established open -source software tooling.
David Shah is a self-employed developer working on nextpnr, the open source FPGA place-and-route tool. His previous work also includes Project Trellis, open source bitstream documentation for the Lattice ECP5 FPGAs.
OpenUK, the advocate organisation for Open Technology (open source software, open hardware and open data) in the UK, has revamped its Kids’ Competition due to the impact of school closures and the Coronavirus pandemic.
A total of 400 MiniMU Glove kits each including a BBC micro:bit will be sent directly to participating kids in May, to help kids experiment and experience what can be achieved with the newly open sourced MiniMu gloves. Kits are being sent directly to kids to construct and they can then take part in fun activities designed to help them experiment and make music with the gloves.
A 10-episode animated series has also been designed by School Science Ambassador and 2020 EdTech Hall of Fame member David Whale, with curriculum related input from educationalist and Morrison’s Academy computer science teacher Pamela Boal. Each fun 10-minute episode has an activity for participating kids and will a friendly and fun introduction into open source, making music and developing other uses for the MiniMU glove. The aminated series has animation by Drawnalism and narration from voiceover artist Stephanie Bower.
A comment by Julian Kunkel, Simon Worthington, Jeremy Bennett, Andy Bennett
Governments worldwide are developing smartphone apps that track the location and movement profile of citizens in order to quickly identify contact persons of COVID-19 infections. According to The Financial Times, if even 40% of smartphone users install such an application, the infection levels would be significantly reduced in the UK. Therefore, the widespread usage of such an application is an important instrument in the current crisis.
How could such a smartphone app work? In a nutshell, a device can scan other nearby devices and exchange device IDs, for example, using Bluetooth. This information then needs to be stored with a timestamp. If the owner of a device contracts the virus, s/he could indicate this fact in the app allowing to associate the own device ID with the information that s/he may have infected others. This data then needs to be recorded on a server to allow the app of other users to query the register and then compare any contact information with the register of COVID-19 victims.
This post is part of the OSSG series “the role of open source in the UK”, where we collect and publish statements from companies and individuals in the UK regarding their experience with Open Source Software. We welcome any submission to this series. If you are interested, please send an email to Dr Julian Kunkel.
by Dr Julian Kunkel, Lecturer, Department of Computer Science, University of Reading
Open source is vital in providing teaching, in conducting research in computer science, and in enabling reproducible large-scale experiments in computational science that support the society. In this post, Julian describes his experience with Open Source in his career.
The Relevance of Open Source: A Personal Statement
Open-source software is for me the key enabler for productive work and for providing training and research environments for various reasons. Firstly, in my own work environment, I rely upon Ubuntu as the operating system to give me the freedom to conduct research and programming experiments easily on my laptop that can later be scaled up to data-center wide experiments.
Having full control over the system and easy means to repair a broken system, I haven’t lost any data in my 20-year usage of Linux albeit my work often requires to perform rigorous stress-testing of hardware components. I have high confidence and trust in the software stack due to the openness of the software stack. There are no hidden data transmission of private data and proper security schemes in place that protect my data and research. Another benefit I acknowledge is that key APIs are robust and software I rely on that has started to be developed 20 years ago can still be used.
For the last year or so, Open Source educational and advocacy work by our think tank, OpenForum Europe, has been framed by a key question: “Why did Open Source Software development end up as an unintended casualty in the original proposal of the EU’s Copyright Directive?”
In a time when
the digital transformation is at the heart of many policy discussions in
Brussels, and when Open Source-dependent technology such as IoT, Cloud,
blockchain and supercomputers are hot topics, no one involved in drafting the
legislation thought of software development. In short, the platforms and
repositories used by developers to drive the digital transformation through the
collaborative development of code were forgotten.
the platforms fell into the scope of the Copyright Directive’s filtering
obligations, they ran the risk of being regulated out of practical existence in
the EU, or at least their users would experience a very negative cooling effect
In response to this regulatory risk, OpenForum Europe and the Free Software Foundation Europe started the SaveCodeshare.eu campaign. In the end we were successful in excluding software platforms from the final law. That said (and there is a lot to say about the process of getting there and the many other consequences of the Copyright Directive as a whole) our main takeaway was the grim realisation that Open Source software was overlooked, despite software being largely regulated by copyright law.
On the one hand,
this says something about knowledge gaps that exist among policy makers. But on
the other hand, it also says something about the state of Open Source advocacy
in Europe. Advocacy has not followed the times and is way behind reflecting the
reality of the role and position of Open Source in everything digital.
Open Source advocacy is still reactive. Communities of activists and advocates should (perhaps must) build the capacity to be proactive.
The need for a
maturing of Open Source representation in politics goes beyond simply not being
overlooked when drafting digitally relevant legislation. In our view, with Open
Source having gone mainstream, there are new risks and opportunities arising.
That means that the political conversation around Open Source has to go beyond
what it has focused on in the past, to how to become acknowledged as being of
strategic importance for Europe’s digital future.
To be part of that
conversation, the Open Source ecosystem needs to build the capacity to become
trusted partners of governments and public authorities, in order to capture the
We believe that
to make that happen, to not just fend off regulatory risk, but also capture the
opportunities that are out there, all stakeholders in the ecosystem need to
step up. From the developers, Open Source vendors to the large IT and
industrial companies that develop and/or depend on Open Source’s innovative
benefits, there needs to be more effort, energy and resources spent on
political representation and educational efforts.
We have to at least take on the collective responsibility to make sure that Open Source Software never becomes an unintended casualty again. For those stakeholders that look further than defensive efforts, we need to be part of the conversations around the digitization of all sectors of our society. It is also our responsibility to do our part in ensuring that the much talked about Digital Sovereignty describes a digital reality that is neither locked-in to a small group of monopolistic vendors or for that matter, a chauvinist approach of a Europe closed for global collaboration.
OpenUK is a membership and trade organisation for “open” in the UK, actively representing the interests of UK businesses in the UK and internationally. It is building out a number of projects and workstreams to create a single voice for opens source software, open hardware and open data across the UK. This will be increasingly important post-Brexit, when we need to come together with once voice to be recognised as a strong presence in the UK and to influence Government, legislation and the public sector to ensure appropriate treatment of “open” in the UK.
We have a
wide variety of new work streams supporting the goals of OpenUK and will be
working with our extended board to prepare our 2020 strategy in January and
will be sharing this via our new web site and NextCloud.
Committees we have set up and will be working on are:
Awards Committee – organising our 2020 OpenUK Awards in London on 11 June, as part of London Tech Week chaired by Amanda Brock with judges Andrew Back, Cheryl Chen and Chris Lamb
Events Committee – being formed in 2020. We have a healthcare event on 6 February, and open data series kicking off in March and a number of other events planned including topics such as open hardware and well-being/ working from home – chaired by Amanda Brock
Learning Committee – working on an open-source GCSE and a schools competition for early 2020, with the winners being part of the Awards. Over time we will work on code camps etc – chaired by Paul Taylor
Legal and Policy Committee – currently setting its remit, reviewing CCS and GDS contract terms, looking forward to a meeting with the Parliamentary All-Party Intellectual Property Committee, when a new Government is in place and responding to the recent Commission workshop – chaired by Chris Eastham
Museums Committee – being formed in 2020. Working on a permanent exhibition room at the National Computer Museum at Bletchley to be launched in January 2021 and temporary exhibitions open elsewhere – chaired by Stuart Mackintosh
Universities Committee – welcoming all universities in collaborative student projects – chaired by Bruce Darby of Edinburgh University
actively looking for additional members for a number of our committees and
groups and would be pleased to hear from anyone interested in volunteering.
British Baked Podcasts,
celebrating the talent of the UK’s open sectors will be added weekly from
January and are being recorded with the support of BCS’s open source group and
Endecosm. We are also hoping to launch UK Faces of Open Source in 2020. http://www.facesofopensource.com/
of the participants in all of our committees in our new web site which will be
live before Christmas, thanks to our friends Greg and Ele at Civic, who are
working hard to build this. A combination of our site and our Nextcloud, hosted
by OpusVL,will allow easy access to mailing lists and transparency across the
work of our committees and board. Andrew Katz, our Pro Bono GC and his team at
Moorcrofts are working hard on making sure all the necessary legals are in
Amanda Brock has stepped into the role of CEO and will be OpenUK’s first employee.
will also be extending in January and details of the interim board for 2020
will be updated in the new site. By the end of 2020 we will move to an elected
OpenUK events calendar on the new site will list what is happening across open
source software, open data and open hardware in the UK and beyond and will also
include the up and coming OpenUK events and even we will be attending in 2020.
Please contact us via the site, if you
would like an event listed.
Our final exciting news, is that OpenUK will be hosting a stand at FOSDEM for the first time on Saturday 1 February, potentially the first day after the UK’s Brexit from the European Union. It will be themed “Tea and Biscuits with the Brits”.
We welcome anyone based in the UK or who wants to showcase a UK business as part of our stand, to take part, give away their goodies and meet the folk of FOSDEM with us. Please contact firstname.lastname@example.org if you would like to help with our stand and hope that you will join us for tea, biscuits and a good old natter about open source in Brussels. Please also feel free to contact me if you are interested in participating in any of our committees or are interested in becoming a member of OpenUK or sponsoring our activities.