Skip to content

Instantly share code, notes, and snippets.

View urish's full-sized avatar

Uri Shaked urish

View GitHub Profile
@urish
urish / scan_wrapper.v
Last active August 31, 2022 21:16
Parallel Scan Wrapper
`default_nettype none
/*
`ifdef COCOTB
`define UNIT_DELAY #1
`define FUNCTIONAL
`define USE_POWER_PINS
`include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
`include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
`endif
*/
// Wokwi Custom Chip - For information and examples see:
// https://link.wokwi.com/custom-chips-alpha
//
// SPDX-License-Identifier: MIT
// Copyright (C) 2022 Uri Shaked / wokwi.com
#include "wokwi-api.h"
#include <stdio.h>
#include <stdlib.h>
@urish
urish / wokwi-custom-chips-c-api.md
Last active January 30, 2023 05:47
Wokwi Custom Chips C API
function galoisMultiply1(x, y) {
const Zi = new Uint32Array(4);
const Vi = new Uint32Array(y);
for (let i = 0; i < 128; i++) {
const xi = (x[i >> 5] & (1 << (31 - (i % 32)))) !== 0;
if (xi) {
Zi[0] ^= Vi[0];
Zi[1] ^= Vi[1];
Zi[2] ^= Vi[2];
Zi[3] ^= Vi[3];
`default_nettype none
`timescale 1ns/1ns
module encoder (
input clk,
input reset,
input a,
input b,
output reg [7:0] value
);
`default_nettype none
`timescale 1ns/1ns
module encoder (
input clk,
input reset,
input a,
input b,
output reg [7:0] value
);
magic
tech sky130A
timestamp 1638034600
<< nwell >>
rect -40 -195 205 -55
<< nmos >>
rect 40 0 55 65
<< pmos >>
rect 40 -140 55 -75
<< ndiff >>
@urish
urish / raspberrypi4-native.cfg
Created November 4, 2021 01:43
OpenOCD Configuration for Raspberry Pi 4
interface bcm2835gpio
bcm2835gpio_peripheral_base 0xFE000000
# Transition delay calculation: SPEED_COEFF/khz - SPEED_OFFSET
# These depend on system clock, calibrated for stock 700MHz
# bcm2835gpio_speed SPEED_COEFF SPEED_OFFSET
bcm2835gpio_speed_coeffs 236181 60
# Each of the JTAG lines need a gpio number set: tck tms tdi tdo
{
"project.header.save": "保存",
"project.header.share": "分享",
"project.menu.saveACopy": "另存为",
"project.menu.downloadProjectZip": "下载项目文件",
"project.menu.simulation": "模拟",
"editor.fileMenu.rename": "重命名",
"editor.fileMenu.newFile": "新文件",
"editor.fileMenu.delete": "",
{
"packages": [
{
"name": "esp32",
"maintainer": "Espressif Systems",
"websiteURL": "https://github.com/espressif/arduino-esp32",
"email": "hristo@espressif.com",
"help": {
"online": "http://esp32.com"
},